在 Windows 系统部署对冲基金分析工具 ai-hedge-fund 的笔记
#工作记录
一、环境准备
在部署对冲基金分析工具ai-hedge-fund前,需提前安装好必备软件,为后续工作搭建好基础环境。
1. 安装 Anaconda
Anaconda 集成了 Python 及众多科学计算库,是项目运行的重要基础。从Anaconda 官方网站下载适合 Windows 系统的安装包,下载完成后,双击安装包,按照安装向导的提示进行操作,注意在安装过程中可选择将 Anaconda 添加到系统环境变量,方便后续使用。安装完成后,打开 Anaconda Prompt,可通过输入conda --version命令来验证是否安装成功。
conda --version
2. 安装 Poetry
Poetry 用于项目的依赖管理和环境配置。在 Anaconda Prompt 中执行pip install poetry命令进行安装。安装成功后,输入poetry --version,若显示出版本信息,则说明安装成功。Poetry 安装路径通常为D:\ProgramData\anaconda3\Scripts\poetry.exe,在后续配置 PyCharm 时会用到此路径。
pip install poetry
poetry --version
【笔记】快速安装Poetry-CSDN博客
poetry 的路径:
D:\ProgramData\anaconda3\Scripts\poetry.exe
3. 安装 Node.js 和 npm
Node.js 和 npm 是前端项目运行的必要环境。从Node.js 官方网站下载 Windows 版本的安装包,安装过程中保持默认设置即可。安装完成后,打开命令提示符或 PowerShell,分别输入node -v和npm -v,若能显示出版本号,表明安装成功。
node -v
npm -v
4. 安装 GitHub Desktop
GitHub Desktop 方便我们进行代码的克隆与管理。
从GitHub Desktop 官方网站下载安装包,安装完成后,打开软件并登录自己的 GitHub 账号。
5. 安装 Ollama
Ollama 用于本地大语言模型推理。从Ollama 官方网站下载 Windows 版本的安装包,安装完成后,在命令提示符中执行ollama serve启动服务。
若提示Error: listen tcp 127.0.0.1:11434: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.,表示端口 11434 被占用,可通过以下方法解决:
- 查找占用端口的进程:在命令提示符或 PowerShell 中执行netstat -ano | findstr :11434,找到对应进程 ID(PID)。
- 终止进程:执行taskkill /F /PID [PID] (将[PID]替换为实际进程 ID) 。
- 更换端口:执行ollama serve --port 12345 (将12345替换为其他未被占用端口),同时需在后续使用中修改代码中 Ollama API 地址 。
二、克隆项目
使用 GitHub Desktop 克隆项目代码到本地,方便后续进行项目的部署与调试。
- 打开 GitHub Desktop,点击File -> Clone repository。
- 在弹出窗口的URL选项卡中,输入项目 GitHub 地址https://github.com/virattt/ai-hedge-fund.git。
- 选择本地存储路径,点击Clone按钮开始克隆项目。
- 克隆完成后,进入项目文件夹,空白处右键用PyCharm打开,后续的依赖安装、命令执行等操作都可在PyCharm中进行。
三、在 PyCharm 中配置 Poetry 解释器
【笔记】PyCharm 中创建Poetry解释器-CSDN博客
PyCharm 是常用的 Python 开发集成环境,正确配置 Poetry 解释器有助于项目的开发与运行。
- 打开 PyCharm,新建项目或打开已克隆的ai-hedge-fund项目。
- 依次点击File -> Settings(Windows/Linux)或PyCharm -> Preferences(Mac)。
- 在弹出的窗口中,选择Project: [项目名称] -> Python Interpreter。
- 点击右上角的齿轮图标,选择Add。
- 在弹出的窗口中,选择Poetry Environment,确保Use existing environment被选中,点击...按钮,在文件浏览窗口中找到并选择D:\ProgramData\anaconda3\Scripts\poetry.exe。
- 点击OK保存配置,完成 Poetry 解释器的配置。
四、配置环境变量
环境变量的配置是为项目提供必要的 API 密钥等信息,确保项目能够正常运行。
1. 创建.env 文件
在项目根目录下,打开命令提示符或 PowerShell,执行copy .env.example .env命令,复制.env.example文件为.env文件。
cp .env.example .env
2. 编辑.env 文件
使用文本编辑器(如 Notepad++、VS Code 等)打开.env文件,添加以下 API 密钥:
# For running LLMs hosted by openai (gpt-4o, gpt-4o-mini, etc.) # Get your OpenAI API key from https://platform.openai.com/ OPENAI_API_KEY=your-openai-api-key# For running LLMs hosted by groq (deepseek, llama3, etc.) # Get your Groq API key from https://groq.com/ GROQ_API_KEY=your-groq-api-key# For getting financial data to power the hedge fund # Get your Financial Datasets API key from https://financialdatasets.ai/ FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key
API 密钥获取(有限的免费额度,完整功能API密钥可能要收费)
openai-api-key获取网址:
https://platform.openai.com/welcome?step=try
groq-api-key获取网址:
https://console.groq.com/home
financial-datasets-api-key获取网址:
Financial Datasets | Stock Market API
五、安装项目依赖
项目依赖的安装是确保项目各功能模块正常运行的关键步骤,需分别安装根项目依赖、后端应用依赖和前端应用依赖。
安装根项目依赖
在项目根目录的终端中,执行poetry install命令,Poetry 会根据项目的pyproject.toml文件自动安装所需的依赖包。
poetry install
六、运行项目
完成上述步骤后,即可运行项目进行对冲基金分析。
- 1、在项目根目录的终端中,执行poetry run python src/main.py --ticker AAPL --ollama命令(其中--ticker AAPL可根据需求修改为其他股票代码,--ollama表示使用 Ollama 进行本地 LLM 推理)。
poetry run python src/main.py --ticker AAPL --ollama
- 2、执行命令后,会提示选择 AI 分析师,通过按↑ ↓箭头移动光标,按空格键选择分析师,按回车键确认选择。
- 3、接着会提示选择 Ollama 模型,通过按↑ ↓箭头移动光标,按回车键确认选择。
- 常见问题及解决:
-
- LLM 调用失败(状态码 502 等):
【笔记】排查并解决Error in LLM call after 3 attempts: (status code: 502)-CSDN博客
-
-
- 尝试使用更小的模型,如gemma3:4b、llama3:7b 。
-
-
-
- 修改src/tools/llm.py增加超时时间和重试次数,并在重试时尝试重启 Ollama 服务 。具体可在call_ollama函数中增加相关逻辑,例如:
-
def call_ollama(prompt, model="gemma3:4b", max_retries=10, timeout=300):url = "http://localhost:11434/api/generate"payload = {"model": model,"prompt": prompt,"stream": False,"temperature": 0.1,"max_tokens": 1500,"top_p": 0.9,"frequency_penalty": 0.2}for attempt in range(max_retries):try:logger.info(f"LLM call attempt {attempt+1}/{max_retries}")response = requests.post(url, json=payload, timeout=timeout)response.raise_for_status()return response.json()["response"]except Exception as e:logger.warning(f"LLM call failed: {e}")# 每3次重试重启一次服务if attempt % 3 == 0: try:subprocess.run(["taskkill", "/F", "/IM", "ollama.exe"], check=True)time.sleep(2)subprocess.Popen(["ollama", "serve"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)time.sleep(5) except Exception as restart_e:logger.warning(f"Failed to restart Ollama: {restart_e}")time.sleep(5 * (attempt + 1)) raise Exception("Failed to get response from LLM after multiple attempts")
- 优化 Ollama 配置,在~/.ollama/config.toml中设置cache_size、threads等参数 。例如:
[models]
cache_size = 8 # 减少缓存大小,单位为 GB
threads = 4 # 减少线程数,根据 CPU 核心数调整
[server]
timeout = 300 # 增加超时时间,避免请求过早失败
- OpenAI API 配额不足(错误代码 429):
-
- 检查 OpenAI 账户配额,升级付费计划或切换到本地 Ollama 模型 。
- 金融数据 API 请求被限流(错误代码 429):
-
- 在src/tools/api.py中添加指数退避重试机制,避免频繁请求 。例如:
import time
import requests
from requests.exceptions import RequestExceptiondef search_line_items(ticker, items, api_key=None):url = f"https://financialdatasets.ai/api/financials/{ticker}"headers = {"Authorization": f"Bearer {api_key}"} if api_key else {}params = {"items": ",".join(items)}max_retries = 5for attempt in range(max_retries):try:response = requests.get(url, headers=headers, params=params, timeout=30)response.raise_for_status()return response.json()except RequestException as e:if response.status_code == 429:retry_after = int(response.headers.get('Retry-After', 2 ** attempt))print(f"Rate limited. Retrying in {retry_after} seconds...")time.sleep(retry_after)continueraise Exception(f"Error fetching data: {ticker} - {response.status_code} - {response.text}")raise Exception(f"Failed after {max_retries} attempts: {ticker}")
- 减少并发请求,一次只分析一只股票并减少启用的分析师数量 。
运行成功后,可在终端查看各分析师对股票的评估、交易决策及投资组合总结等分析结果。
七、注意事项
- 密钥准确性:确保.env文件中的 API 密钥正确,否则项目可能无法正常获取数据或调用模型。
- 网络连接:运行项目时需保证网络正常,因为部分数据需从网络获取。
- 权限问题:确保对项目文件夹有足够的读写权限,避免因权限不足导致项目运行出错。
- 免责声明:该项目仅作教育和研究用途,不可用于实际交易或投资,不提供投资建议,使用前务必咨询财务顾问。
- 代理设置:确保在运行程序时,代理设置为规则模式,避免本地ollama通过代理被调用。
【笔记】排查并解决Error in LLM call after 3 attempts: (status code: 502)-CSDN博客
这份笔记涵盖了从环境搭建到项目运行及问题解决的全流程。若在部署过程中还有疑问,或遇到其他状况,欢迎随时一起交流。
相关文章:
在 Windows 系统部署对冲基金分析工具 ai-hedge-fund 的笔记
#工作记录 一、环境准备 在部署对冲基金分析工具ai-hedge-fund前,需提前安装好必备软件,为后续工作搭建好基础环境。 1. 安装 Anaconda Anaconda 集成了 Python 及众多科学计算库,是项目运行的重要基础。从Anaconda 官方网站下载适合 Win…...
基于python的机器学习(八)—— 评估算法(一)
目录 一、机器学习评估的基本概念 1.1 评估的定义与目标 1.2 常见评估指标 1.3 训练集、验证集与测试集的划分 二、分离数据集 2.1 分离训练数据集和评估数据集 2.2 k折交叉验证分离 2.3 弃一交叉验证分离 2.4 重复随机评估和训练数据集分离 三、交叉验证技术 3.…...
广东省省考备考(第十六天5.21)—言语:语句排序题(听课后强化)
错题 解析 对比选项,确定首句。①句介绍目前人类可以利用一些技术手段进入元宇宙,凭借网络重新定义自己,体验一种全新的生活,②句介绍对于多数人来说,首先要弄清楚什么是元宇宙,③句介绍元宇宙是指超越现实…...
什么是实时流数据?核心概念与应用场景解析
在当今数字经济时代,实时流数据正成为企业核心竞争力。金融机构需要实时风控系统在欺诈交易发生的瞬间进行拦截;电商平台需要根据用户实时行为提供个性化推荐;工业物联网需要监控设备状态预防故障。这些场景都要求系统能够“即时感知、即时分…...
计算机视觉与深度学习 | Python实现CEEMDAN-ABC-VMD-DBO-CNN-LSTM时间序列预测(完整源码和数据)
以下是一个结合CEEMDAN、ABC优化VMD、DBO优化CNN-LSTM的完整时间序列预测实现方案。该方案包含完整的数据生成、算法实现和模型构建代码。 完整实现代码 import numpy as np import pandas as pd from PyEMD import CEEMDAN from vmdpy import VMD from sklearn.preprocessing…...
每日Prompt:实物与手绘涂鸦创意广告
提示词 一则简约且富有创意的广告,设置在纯白背景上。 一个真实的 [真实物体] 与手绘黑色墨水涂鸦相结合,线条松散而俏皮。涂鸦描绘了:[涂鸦概念及交互:以巧妙、富有想象力的方式与物体互动]。在顶部或中部加入粗体黑色 [广告文案…...
期刊采编系统安装升级错误
我们以ojs系统为例: PHP Fatal error: Uncaught Error: Call to a member function getId() on null in /esci/data/html/classes/install/Upgrade.inc.php:1019 Stacktrace: #0 /esci/data/html/lib/pkp/classes/install/Installer.inc.php(415): Upgrade->con…...
【linux命令】git命令简单使用
git命令简单使用 1. 将代码下载到到本地2. 查看分支是否正确3. 将工作目录中的变更添加到暂存区,为下一次提交做准备4. 提交更改,添加提交信息5. 将本地的提交推送到远程仓库6.从远端仓库拉取分支代码7.查看修改日志8. 解决冲突 1. 将代码下载到到本地 …...
使用Tkinter写一个发送kafka消息的工具
文章目录 背景工具界面展示功能代码讲解运行环境创建GUI程序搭建前端样式编写功能实现代码 背景 公司是做AR实景产品的,近几年无人机特别的火,一来公司比较关注低空经济这个新型领域,二来很多政企、事业单位都采购了无人机用于日常工作。那么…...
【VS2017】cpp文件字符编码异常导致编译报错
这是一个 wav 转 pcm 的简单demo,但VS2017编译报错 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <inttypes.h> #pragma pack(push, 1) struct TWavHead {int8_t riff[4]; /*!< (4)资源交换文件标志 RIFF */uint32_t file_si…...
Vue3 中 Route 与 Router 的区别
在 Vue Router 中,Route 和 Router 是两个相关但完全不同的概念: 1、Router (路由实例) 定义:Router 是路由器的实例,负责整个应用的路由管理 功能: 管理路由映射表(路由配置) 提供编程式导航…...
gcc还会有自己的头文件呢?
1. GCC自己的头文件目录 路径: .../lib/gcc/<target>/<version>/include 作用: 这里存放的是GCC编译器自身实现的一些头文件,比如 stdarg.h、float.h、limits.h、varargs.h 等。这些头文件是C/C标准规定必须有的,但…...
YOLO训练输入尺寸代表什么 --input_width 和 --input_height 参数
参数作用 硬件对齐要求 许多边缘计算芯片(如 K230)的 NPU 对输入尺寸有 内存对齐要求(例如 32 的倍数)。脚本会自动将你填写的输入尺寸向上对齐到最近的 32 倍数: input_width int(math.ceil(args.input_width / 32.0…...
缓存穿透、缓存击穿、缓存雪崩解决方案
在分布式系统中,缓存是提升性能的关键组件,但也可能面临 缓存穿透、缓存击穿、缓存雪崩 三大典型问题。以下是三者的核心概念、区别及解决方案: 一、缓存穿透(Cache Penetration) 概念 场景:客户端请求 不存在的数据(如恶意攻击的非法 Key),由于缓存和数...
前端面经-nginx/docker
1.如何查看 Linux 系统负载?如何判断负载是否过高? 使用 top、htop 或 uptime 查看系统负载。 负载值(Load Average)反映 CPU 繁忙程度,理想情况下应小于 CPU 核心数。例如,4 核 CPU 的负载持续超过 4 表示…...
权限控制相关实现
Spring Boot-Shiro-Vue: 这个项目可以满足基本的权限控制需求,前后端都有,开箱即用...
[论文精读]Ward: Provable RAG Dataset Inference via LLM Watermarks
Ward: Provable RAG Dataset Inference via LLM Watermarks [2410.03537] Ward: Provable RAG Dataset Inference via LLM Watermarks ICLR 2025 Rebuttal:Ward: 可证明的 RAG 数据集推理通过 LLM 水印 | OpenReview --- Ward: Provable RAG Dataset Inference v…...
第23天-Python Flet 开发指南
环境准备 pip install flet 示例1:基础计数器应用 import flet as ftdef main(page: ft.Page):page.title = "计数器"page.vertical_alignment = ft.MainAxisAlignment.CENTERtxt_number = ft.TextField(value="0", text_align=ft.TextAlign.RIGHT, wid…...
LangGraph(五)——自定义状态
目录 1. 向状态添加键2. 更新工具中的状态3. 构建状态图4. 提示聊天机器人5. 添加人工协助6. 手动更新状态参考 1. 向状态添加键 通过向状态添加name和birthday键来更新聊天机器人对实体生日的研究: from typing import Annotated from typing_extensions import T…...
fatload使用方式
Fatload是U-Boot中的一个命令,用于从FAT文件系统加载二进制文件到内存中。其基本用法如下: fatload <interface> <dev[:part]> <addr> <filename> <bytes>interface:所使用的接口,如MMC、…...
Pytorch基础操作
面试的时候,PhD看我简历上面写了”熟悉pytorch框架“,然后就猛猛提问了有关于tensor切片的问题…当然是没答上来,因此在这里整理一下pytorch的一些基础编程语法,常看常新 PyTorch基础操作全解 一、张量初始化 PyTorch的核心数据…...
Femap许可证安装与配置指南
在电磁仿真领域,Femap凭借其卓越的性能和广泛的应用场景,已成为许多工程师和科研人员的首选工具。为了确保您能够顺利安装和配置Femap许可证,本文将提供详细的安装和配置指南,帮助您快速完成设置,开启高效的仿真之旅。…...
家用和类似用途电器的安全 第1部分:通用要求 与2005版差异(7)
文未有本标准免费下载链接。 ——增加了“对峰值电压大于15kV的,其放电电能应不超过350mJ”的要求(见8.1.4) 1. GB/T4706.1-2024: 8.1.4 如果易触及部件为下述情况,则不认为其是带电的。 ——该部件由安全特低电压供电,且: 对…...
基于Browser Use + Playwright 实现AI Agent操作Web UI自动化
Browser Use是什么 Browser Use是一个开源项目官网:Browser Use - Enable AI to control your browser,专为大语言模型(LLM)设计的只能浏览器工具,能够让AI像人类一样自然的浏览和操作网页,支持多标签页管…...
【题解-洛谷】B4302 [蓝桥杯青少年组省赛 2024] 出现奇数次的数
题目:B4302 [蓝桥杯青少年组省赛 2024] 出现奇数次的数 题目描述 奇数:指不能被 2 2 2 整除的整数。 例如: 3 3...
Redis SETNX:分布式锁与原子性操作的核心
SETNX 是 Redis 中的一个经典命令,全称是 Set if Not eXists(当键不存在时设置值)。它的核心作用是原子性地完成 “检查并设置” 操作,常用于分布式锁、防止重复提交等需要 “独占性” 的场景。 一、基本语法与返回值 命令格式&…...
常见字符串相似度算法详解
目录 引言 一、Levenshtein距离(编辑距离) 1.1 算法原理 1.2 Java实现 1.3 springboot中实现 二、Jaro-Winkler相似度 2.1 算法特点 2.2 Java实现 三、余弦相似度(向量空间模型) 3.1 实现步骤 3.2 Java实现 3.3 简化版…...
红蓝对抗中的网络安全设备操作手册
目录 🔐 关键要点 设备操作与实战应用 📊 1. 防火墙 (Firewall) 蓝队(防御)用法 红队(攻击)用法 🔍 2. 入侵检测/防护系统 (IDS/IPS) 蓝队(防御)用法 红队&#…...
用python实现汉字转拼音工具
用python实现汉字转拼音工具 主要功能特点: 多种拼音风格选择(带声调符号、数字声调、无声调)输出模式:可以选择“普通模式”(仅拼音)或“拼音注音”(每个汉字的拼音显示在上方)可…...
spring中的Interceptor使用说明
一、Interceptor 的核心概念 Interceptor(拦截器) 是 Spring MVC 提供的一种机制,用于在请求处理的不同阶段插入自定义逻辑。其核心作用包括: • 预处理:在控制器方法执行前进行权限校验、日志记录等。 • 后处理&am…...
Wi-Fi(无线局域网技术)
Wi-Fi(Wireless Fidelity,无线保真)是通过无线电波传输数据的技术,它使设备能够通过无线连接方式访问网络、共享文件或连接互联网。Wi-Fi已经成为现代家庭、办公室以及公共场所中常见的无线通信方式,支持的设备包括手机…...
MySQL Host 被封锁解决方案(全版本适用 + Java 后端优化)
引言 MySQL 中 “Host is blocked because of many connection errors” 是生产环境常见问题,若处理不当会导致服务中断。本文结合 MySQL 官方文档(5.5/8.0)、Java 后端最佳实践及企业级经验,提供从 “快速解封” 到 “根源优化”…...
分类预测 | Matlab实现PSO-RF粒子群算法优化随机森林多特征分类预测
分类预测 | Matlab实现PSO-RF粒子群算法优化随机森林多特征分类预测 目录 分类预测 | Matlab实现PSO-RF粒子群算法优化随机森林多特征分类预测分类效果**功能概述****算法流程** 分类效果 功能概述 数据预处理 读取Excel数据集,划分训练集(前260行&#…...
【苍穹外卖】Day01—Mac前端环境搭建
目录 一、安装Nginx (一)安装Homebrew (二)Homebrew安装Nginx 1. 执行安装命令: 2. 验证安装: (三)启动与停止Nginx 二、配置Nginx 1. 替换nginx.conf 2. 替换html文件夹 三…...
anaconda创建环境出错HTTPS
报错信息 warnings.warn( /home/ti-3/anaconda3/lib/python3.12/site-packages/urllib3/connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host ‘repo.anaconda.com’. Adding certificate verification is strongly advised. Se…...
Nginx 强制 HTTPS:提升网站安全性的关键一步
在当今互联网时代,网站的安全性至关重要。使用 HTTPS 协议可以有效保护用户数据,防止信息泄露和中间人攻击。本文将详细介绍如何在 Nginx 中设置强制 HTTPS,确保所有 HTTP 请求都被自动重定向到 HTTPS。 一、背景与重要性 HTTPS(…...
青藏高原边界数据总集
关键数据集分类:地表参数数据集空间分辨率:m共享方式:开放获取数据大小:265.87 KB数据时间范围:2016元数据更新时间:2022-04-18 数据集摘要 此边界数据总集包含五种类型的边界: 1、TPBoundary_2500m&#…...
AI赋能R-Meta分析核心技术:从热点挖掘到高级模型
随着人工智能技术的不断进步,Meta分析作为科学研究中的一种重要方法,也在不断地被赋予新的活力。特别是以ChatGPT为代表的AI大语言模型,为Meta分析提供了更为高效和智能的工具。本文将详细介绍AI赋能R-Meta分析的核心技术,并结合实…...
基于R语言地理加权回归、主成份分析、判别分析等空间异质性数据分析实践技术应用
在自然和社会科学领域有大量与地理或空间有关的数据,这一类数据一般具有严重的空间异质性,而通常的统计学方法并不能处理空间异质性,因而对此类型的数据无能为力。以地理加权回归为基础的一系列方法:经典地理加权回归,…...
GPT 等decoder系列常见的下游任务
下面用一句话+四个例子,把上面那张“所有下游任务都要微调”架构图说清楚: 核心思路:不管你要做什么任务,都用同一个 Transformer(这里是 GPT/Decoder-Only 模型)当“特征抽取器”&a…...
java面试每日一背 day1
1.什么是缓存穿透 缓存穿透是指查询一个数据库中根本不存在的数据,导致这个查询请求绕过缓存直接访问数据库的情况。这种情况如果频繁发生,会对数据库造成不必要的压力。 典型特征: (1)查询的数据在数据库和缓存中都…...
Spring Boot AI 之 Chat Client API 使用大全
ChatClient提供了一套流畅的API用于与AI模型交互,同时支持同步和流式两种编程模型。 流畅API包含构建Prompt组成元素的方法,这些Prompt将作为输入传递给AI模型。从API角度来看,Prompt由一系列消息组成,其中包含指导AI模型输出和行为的指令文本。 AI模型主要处理两类消息: …...
初识Linux · 五种IO模型和非阻塞IO
目录 前言: 五种IO模型 什么是IO IO模型 非阻塞IO 前言: 前文我们已经将网络的基本原理介绍完了,都是通过围绕TCP/IP四层协议,将应用层,传输层,网络层,数据链路层全部介绍完毕,…...
牛客网NC15869:长方体边长和计算问题解析
牛客网NC15869:长方体边长和计算问题解析 题目描述 问题分析 设长方体的三条边长为 x, y, z根据题意,三个面的面积分别为: 第一个面面积:a x * y第二个面面积:b x * z第三个面面积:c y * z 解题思路 通过三个面…...
Python60日基础学习打卡D32
我们已经掌握了相当多的机器学习和python基础知识,现在面对一个全新的官方库,看看是否可以借助官方文档的写法了解其如何使用。 我们以pdpbox这个机器学习解释性库来介绍如何使用官方文档。 大多数 Python 库都会有官方文档,里面包含了函数…...
Android本地语音识别引擎深度对比与集成指南:Vosk vs SherpaOnnx
技术选型对比矩阵 对比维度VoskSherpaOnnx核心架构基于Kaldi二次开发ONNX Runtime + K2新一代架构模型格式专用格式(需专用工具转换)ONNX标准格式(跨框架通用)中文识别精度89.2% (TDNN模型)92.7% (Zipformer流式模型)内存占用60-150MB30-80MB迟表现320-500ms180-300ms多线程…...
Flink 核心概念解析:流数据、并行处理与状态
一、流数据(Stream Data) 1. 有界流(Bounded Stream) 定义:有明确起始和结束时间的数据集合,数据量固定,处理逻辑通常是一次性计算所有数据。 典型场景: 历史交易数据统计…...
logits是啥、傅里叶变换
什么是logtis? 在深度学习的上下文中,logits 就是一个向量,下一步通常被投给 softmax/sigmoid 的向量。。 softmax的输出是分类任务的概率,其输入是logits层。 logits层通常产生-infinity到 infinity的值,而softmax层…...
【机器学习基础】机器学习与深度学习概述 算法入门指南
机器学习与深度学习概述 算法入门指南 一、引言:机器学习与深度学习(一)定义与区别(二)发展历程(三)应用场景 二、机器学习基础(一)监督学习(二)无…...
Ajax研究
简介 AJAX Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用…...