全天候风险平价策略下载 | Quantlab AI v0.2:OpenAI的Swarm适配国内大模型(附python代码下载)

server/2024/10/22 15:08:39/

原创内容第679篇,专注量化投资、个人成长与财富自由。

今天我们来实现服务端策略下载,下载后支持在本地调试运作,及查看源代码。

通过服务器下载策略的代码:

@login_required
def down_strategy(request, task_id: str):task = mongo_utils.get_db()['tasks'].find_one({'task_id': task_id})if not task:return {'message': f'{task_id}不存在。'}else:del task['update_datetime']json_string = json.dumps(task)# 创建HTTP响应并设置内容类型为'text/plain'response = HttpResponse(json_string, content_type='text/plain')# 设置文件名response['Content-Disposition'] = 'attachment; filename="{}.json"'.format(task_id)return response

图片

点击“下载”按钮,可以把策略下载到本地:

图片

把下载的策略文件置于data/tasks目录下:

图片

图片

运行后可以看到效果:

图片

后续策略均通过这个形式发布。

代码下载:AI量化实验室——2024量化投资的星辰大海

AI量化实验室 星球,已经运行三年多,1200+会员。

quantlab代码交付至5.X版本,含几十个策略源代码,因子表达式引擎、遗传算法(Deap)因子挖掘引等,每周五迭代一次。

(国庆优惠券)

图片

quantlab_ai v0.2

续前文:quantlab_ai版本v0.1代码发布:从研报中提取因子并建模(附代码与研报集下载)

openapi最新开源的swarm多智能体框架。

https://github.com/openai/swarm

代码量不大,不需要通过pip安装,直接把代码下载回来,整合到quantlab版本中。

图片

一共就四个核心文件。

网上的基本介绍:

OpenAI开源发布了一项重量级研究成果:Swarm。这是一个实验性质的多智能体编排框架,主打特征是工效(ergonomic)与轻量(lightweight)。客观讲,我非常看重lightweight。

我们不必要在框架本身浪费太多时间。

它提供了两个基本的抽象概念:智能体(Agent)和交接(handoffs)。通过它们来实现智能体之间的协作和执行。

老规矩,先跑通hello world。

默认需要使用gpt-4o。我把它替换成KIMI的API

from swarm import Swarm, Agent
from core.llm import LLMllm = LLM().client
client = Swarm(client=llm)def transfer_to_agent_b():return agent_bagent_a = Agent(name="Agent A",instructions="You are a helpful agent.",functions=[transfer_to_agent_b],
)agent_b = Agent(name="Agent B",instructions="Only speak in Haikus.",
)response = client.run(agent=agent_a,messages=[{"role": "user", "content": "I want to talk to agent B."}],model_override='moonshot-v1-128k'
)print(response.messages[-1]["content"])

对swarm的代码进行改造,已适配国内的API。

class Swarm:def __init__(self, api_key=os.getenv('KIMI_KEY'), base_url="https://api.moonshot.cn/v1", model='moonshot-v1-128k',client=None):if not client:client = OpenAI(api_key=api_key,base_url=base_url,)self.client = clientself.model_name = model

在run里加入模型:

def run(self,agent: Agent,messages: List,context_variables: dict = {},model_override: str = None,stream: bool = False,debug: bool = False,max_turns: int = float("inf"),execute_tools: bool = True,
) -> Response:if self.model_name:model_override = self.model_nameif stream:return self.run_and_stream(agent=agent,messages=messages,context_variables=context_variables,model_override=model_override,debug=debug,max_turns=max_turns,execute_tools=execute_tools,)

看一下真实的例子——天气预报:

其实就是fuction call,但非常易用,定义两个python函数,一个是获取天气,一个是发送email。

import jsonfrom swarm import Agentdef get_weather(location, time="now"):"""Get the current weather in a given location. Location MUST be a city."""return json.dumps({"location": location, "temperature": "65", "time": time})def send_email(recipient, subject, body):print("Sending email...")print(f"To: {recipient}")print(f"Subject: {subject}")print(f"Body: {body}")return "Sent!"weather_agent = Agent(name="Weather Agent",instructions="You are a helpful agent.",functions=[get_weather, send_email],
)

会自动识别需求后,自动调用函数

图片

Agent通过传入function增强自己确定性的能力,相当于给大脑提供眼睛,手和脚。我也认同agent框架核心是调用工具,如何灵活调用工具。

至于RAG,那只是使用工具——比如查询本地数据库的一个补充。

图片

(限时免费,感兴趣可入,关注读书,超级个体,AGI与财富自由)

作者:AI量化实验室(专注量化投资、个人成长与财富自由)

 扩展  •  历史文章   

 • 年化53%的策略随quantlab5.13发布,可以直接运行在服务器上了(附python代码)

• 年化46%策略,低代码策略开发,quantlab5.13代码发布

• quantlab_ai版本v0.1代码发布:从研报中提取因子并建模(附代码与研报集下载)

•  AI量化实验室——2024量化投资的星辰大海


http://www.ppmy.cn/server/133931.html

相关文章

基于深度学习的设备异常检测与预测性维护

基于深度学习的设备异常检测与预测性维护是一项利用深度学习技术分析设备运行数据,实时检测设备运行过程中的异常情况,并预测未来可能的故障,以便提前进行维护,防止意外停机和生产中断。它在工业领域应用广泛,特别是在…

SpringCloud-持久层框架MyBatis Plus的使用与原理详解

在现代微服务架构中,SpringCloud 是一个非常流行的解决方案。而在数据库操作层面,MyBatis Plus 作为 MyBatis 的增强工具,能够简化开发,提升效率,特别是在开发企业级应用和分布式系统时尤为有用。本文将详细介绍 MyBat…

c语言基础程序——经典100道实例。

c语言基础程序——经典100道实例 001, 组无重复数字的数002,企业发放的奖金根据利润提成003,完全平方数004,判断当天是这一年的第几天005,三个数由小到大输出006,输出字母C图案007,特殊图案008&…

使用ollama本地部署qwen2并api调用

目录 一、下载ollama 二、安装qwen大模型 三、Api调用 四、尝试apifox调用 一、下载ollama Ollama 是一个开源的、本地运行的 AI 聊天模型,允许在自己的设备上运行 LLM,无需依赖云服务。它支持多种 LLM。目前Ollama library已经支持Qwen2&#xf…

ASP.NET.Web应用程序(.NET Framework)添加Swagger本地Debuge成功打开接口展示界面,发布服务器无法打开接口展示界面

前言 提示:项目使用ASP.NET.Web应用程序(.NET Framework4.6.1)创建WEB API接口供外部系统调用。本地Debug运行可支持https://localhost:44374/swagger/打开界面展示操作,发布使用Release部署服务器时打开界面展示失败。 一、Swag…

一文掌握Cephadm部署Ceph存储集群

📚 博客主页: StevenZeng学堂 🎉 本文专栏: 一文读懂Kubernetes一文读懂Harbor云原生安全实战指南云原生存储实践指南 ❤️ 摘要:随着企业数据量的增长和存储需求的复杂化,Ceph因其高可扩展性和灵活性,能…

Python爬虫:urllib_post请求百度翻译(06)

#post的请求 import urllib.request import urllib.parse import jsonurl https://fanyi.baidu.com/sugheaders {user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36}data {kw : spider }#post请…

AI创新驱动教育:科技革命下的教育转型

日前,2024教育装备创新大会在杭州市余杭区举行,会上集中展示了AI技术如何赋能教学并深入探讨了其影响。AI技术正在以前所未有的力度,引领教育步入智能新时代,成为教育改革创新的催化剂。 在国家政策的积极推动下,AI技…