arXiv | https://arxiv.org/abs/2405.14767
GitHub | https://github.com/AI4Finance-Foundation/FinRobot
摘要:
随着金融机构和专业人士越来越多地将大语言模型(LLMs)纳入其工作流程中,金融领域与人工智能社区之间依然存在显著障碍,包括专有数据和专业知识的壁垒。本文提出了 FinRobot,一种支持多个金融专业化人工智能智能体的新型开源 AI 智能体平台,每个代理均由 LLM 提供动力。具体而言,该平台包含四个主要层次:1)金融 AI 智能体层,通过将复杂的金融问题分解为逻辑序列来形成金融链式思维(CoT);2)金融 LLM 算法层,动态配置适用于特定任务的模型应用策略;3)LLMOps 和 DataOps 层,通过应用训练/微调技术并使用与任务相关的数据来生成准确的模型;4)多源 LLM 基础模型层,整合各种LLM,使上述各层能够直接访问这些模型。
金融分析通常涉及解读市场趋势、预测经济结果并提供投资策略,先于金融决策。股票分析可以分为两类,基本面分析研究公司并给出估值,而技术分析则研究市场行为以预测未来价格走势。
基于大语言模型(LLMs)的基础,智能体已经发展出利用这些模型执行一系列复杂功能的能力,包括计划、内存管理以及工具使用。最近的人工智能智能体应用,例如用于交易的 FinAgent 和用于金融决策的 FinMem,突显了这些技术在执行复杂金融操作方面日益增长的依赖性。尽管这些技术取得了显著进步,但仍存在若干关键挑战未得到解决:
本文提出了 FinRobot,一种利用多源 LLM 进行各种金融任务的开源人工智能智能体平台。FinRobot 优化了从数据处理到策略实施的金融工作流程,扩大了高级分析工具的访问范围,增强了可扩展性和透明度。
FinRobot 的整体框架组织成四个不同的层次,每个层次都旨在解决金融 AI 处理和应用中的特定方面:
金融 AI 智能体层包括专门针对增强金融分析而设计的高级数据感知、认知处理和动态行动执行的领域特定 AI 智能体:
在处理复杂金融数据集并确保高水准的分析准确性和深度方面,部署多智能体工作流系统具有显著优势。该系统集成了多个专业角色,这些角色协同工作,处理、分析并从多种金融数据源中提取可操作的洞察。
API 交互:通过 Text2Params 将自然语言查询转换为 API 请求,有效地结合了生成函数调用和形成 API 调用的能力。
代码编译:通过 Text2Code 对于需要动态生成解决方案的更复杂的金融任务,LLM 可以利用 Text2Code 技术即时编写和编译代码,对于根据用户查询的独特市场条件或金融场景开发定制算法至关重要。
金融 LLM 算法层涵盖了专门设计以应对金融领域各种需求的高级人工智能算法,增强了平台在一系列金融应用方面的功能。
FinGPT 是一个金融领域的语言模型,精心设计以在金融背景下提升自然语言理解能力。模型能够熟练地分析和解释金融叙述,从复杂的文件(如年度报告和实时财经新闻)中提取关键数据,从而支持更高效的决策过程。
FinGPT 主要通过在开源大型语言模型上使用金融领域的“指令-响应”配对数据进行监督微调而开发。 这一过程通过最小化以下负对数似然来实现:
通过优化此目标函数,模型能够学会最大化在给定金融任务指令下生成预期响应的概率。
FinRL 使用集成深度强化学习算法优化交易策略,以分析历史和实时市场数据。这种动态适应性有助于最大化财务回报的同时最小化风险,使股票投资组合分配成为该方法的理想应用。
在 FinRL 中,股票投资组合分配被建模为马尔可夫决策过程(MDP):
FinML 利用了从回归到高级神经网络等多种机器学习技术,以增强金融领域的预测分析能力。这些算法在预测市场趋势、消费者行为、信用风险以及其他关键金融指标方面发挥着重要作用,从而促进基于数据的决策制定。
金融文件经常包含文本内容之外的多种数据类型,例如图表和表格。这些额外的模态提供了丰富的补充性见解,显著增强了分析的深度。为了有效整合和利用这些多样化的数据类型,我们开发了金融多模态大语言模型,专门设计用于处理和综合来自多种模态的信息,从而提供全面和细致的金融文件理解。
金融多模态大语言模型中整合过程的数学表示如下:
LLMOps 层旨在实现高度模块化和插件化,能够快速整合和动态更换生成型预训练语言模型(LLM),以应对不断演进的技术进步和金融市场的需求变化。该层支持无缝模型集成,并包括严格的评估和选择机制,以确保为特定的金融任务选择最合适的模型。这些能力对于保持运营效率并确保解决方案对各种金融场景的适应性至关重要。
智能调度器:是确保模型多样性和优化为每项任务选择最合适的大型语言模型(LLM)的核心。
初始化过程:
运行过程:
评分指标:
DataOps 层管理用于金融分析的广泛且多样的数据集,从公开的表格数据到专有的市场情绪数据。该层对于确保输入到AI处理管道中的所有数据都具有高质量且能代表当前市场状况至关重要。
检索增强生成(RAG)巧妙地结合了上下文检索机制和大规模语言模型(LLM)的优势,以优化语言生成任务。
多源 LLM 基础模型层为 FinRobot 配备了先进的能力,使其能够管理和整合多种多样的大语言模型(LLMs),这对于适应全球金融市场动态需求至关重要。该层的关键功能包括:
思维链提示技术通过结构化提示来促进 AI 模型逐步进行推理过程,类似于人类解决问题的策略。该方法通过促使模型阐述中间推理步骤,从而显著提升了数学和常识推理等复杂推理任务的表现,并增强了决策过程的可解释性和透明度。
金融思维链提示将思维链应用于AI驱动的金融分析中,结合先进的认知处理技术以提升决策能力。该方法通过引导 AI 模型进行逻辑和顺序化的推理过程,将复杂的金融情境分解为更小、更易于管理的部分,对每个部分进行分析,并综合这些发现形成结论或建议。特别适用于需要深入分析的任务,例如估值、投资策略制定、市场趋势分析和风险评估。
市场预测器旨在综合近期市场新闻和财务数据,提供关于公司最新成就和潜在关切的全面洞察,并预测股价变动。作为初级自动化顾问,市场预测器在基于AI的财务顾问领域迈出了显著的进步。
数据:
模型:
提示:
预测结果:
文档分析与生成代表了在金融文档管理与报告生成领域中人工智能代理和大型语言模型(LLMs)的一项开创性应用。该应用利用人工智能的力量对金融文档进行深入分析,并自动生成详细且富有洞察力的报告。
文章来自微信公众号 “ 量仔搞靓化 ”,作者 wwwjf35
【开源免费】n8n是一个可以自定义工作流的AI项目,它提供了200个工作节点来帮助用户实现工作流的编排。
项目地址:https://github.com/n8n-io/n8n
在线使用:https://n8n.io/(付费)
【开源免费】DB-GPT是一个AI原生数据应用开发框架,它提供开发多模型管理(SMMF)、Text2SQL效果优化、RAG框架以及优化、Multi-Agents框架协作、AWEL(智能体工作流编排)等多种技术能力,让围绕数据库构建大模型应用更简单、更方便。
项目地址:https://github.com/eosphoros-ai/DB-GPT?tab=readme-ov-file
【开源免费】VectorVein是一个不需要任何编程基础,任何人都能用的AI工作流编辑工具。你可以将复杂的工作分解成多个步骤,并通过VectorVein固定并让AI依次完成。VectorVein是字节coze的平替产品。
项目地址:https://github.com/AndersonBY/vector-vein?tab=readme-ov-file
在线使用:https://vectorvein.ai/(付费)
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。
项目地址:https://github.com/microsoft/graphrag
【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。
项目地址:https://github.com/langgenius/dify
【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。
项目地址:https://github.com/infiniflow/ragflow/tree/main
【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目
项目地址:https://github.com/phidatahq/phidata
【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。
项目地址:https://github.com/TaskingAI/TaskingAI
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner