在人工智能快速发展的今天,智能助手已成为各行各业提升效率的重要工具。然而,大多数主流智能助手API都是封闭的商业产品,难以满足开发者的个性化需求。为了解决这一问题,MLT-OSS团队推出了Open Assistant API - 一个开源、可自托管的智能助手API框架,为开发者提供了更多的自由度和可能性。
Open Assistant API是一个开箱即用的开源智能助手API框架。它不仅兼容官方OpenAI接口,还支持自定义扩展LLM、RAG、函数调用和工具能力。这意味着开发者可以使用熟悉的OpenAI客户端库来构建应用,同时享受更多的灵活性和功能。
该项目的核心优势包括:
开源性: 作为开源项目,开发者可以自由查看、修改和扩展代码,根据自身需求进行定制。
自托管: 支持本地部署,保护数据隐私和安全。
多模型支持: 通过集成One API,可以支持更多商业和私有模型。
RAG引擎: 集成了R2R RAG引擎,支持多种文件格式的检索增强生成。
工具扩展: 可以轻松集成各种外部工具和服务,增强助手的能力。
相比OpenAI的官方Assistant API,Open Assistant API在多个方面具有优势:
生态系统策略: Open Assistant API采用开源策略,而OpenAI是闭源的。
RAG引擎: Open Assistant API支持R2R引擎,提供更灵活的RAG能力。
互联网搜索: Open Assistant API支持在线搜索,而OpenAI不支持。
内置工具: Open Assistant API的工具可扩展,OpenAI则不可扩展。
LLM支持: Open Assistant API可以支持更多LLM模型,而OpenAI仅支持GPT系列。
本地部署: Open Assistant API支持本地部署,OpenAI则不支持。
这些特性使得Open Assistant API成为一个更加灵活和强大的选择,特别是对于那些需要定制化解决方案的开发者和企业。
要开始使用Open Assistant API,最简单的方法是运行docker-compose.yml文件。在运行之前,请确保您的机器上已安装Docker和Docker Compose。
首先,进入项目根目录,打开docker-compose.yml文件,填写OpenAI API密钥和Bing搜索密钥(可选):
# openai api_key (支持OneAPI api_key)OPENAI_API_KEY=建议配置R2R RAG引擎以替换默认的RAG实现,提供更好的RAG能力:
# RAG配置FILE_SERVICE_MODULE=app.services.file.impl.r2r_file.R2RFileServiceR2R_BASE_URL=http://使用Docker Compose运行:
docker compose up -dAPI基础URL: http://127.0.0.1:8086/api/v1接口文档地址: http://127.0.0.1:8086/docs
以下是使用官方OpenAI Python库创建和运行AI助手的示例:
import openaiclient = openai.OpenAI( base_url="http://127.0.0.1:8086/api/v1", api_key="xxx")assistant = client.beta.assistants.create( name="demo", instructions="You are a helpful assistant.", model="gpt-4-1106-preview")如果需要探索其他用法,如流式输出、工具(web_search、retrieval、function)等,可以在examples目录下找到相应的代码。
Open Assistant API提供了基于令牌的简单用户隔离,以满足SaaS部署需求。可以通过配置APP_AUTH_ENABLE来启用。
认证方法是Bearer令牌。可以在header中包含Authorization: Bearer ***进行认证。令牌管理在API文档的token部分有描述。相关API需要使用管理员令牌进行认证,配置为APP_AUTH_ADMIN_TOKEN,默认为"admin"。创建令牌时,需要提供大模型的基础URL和API密钥。创建的助手将使用相应的配置访问大模型。Open Assistant API允许根据OpenAPI/Swagger规范将各种工具集成到助手中,增强其与外部世界连接的能力。
便于将应用程序与其他系统或服务连接,实现与外部环境的交互,如代码执行或访问专有信息源。使用时,需要先创建工具,然后可以将它们与助手集成。更多详细信息请参考测试用例:Assistant With Action如果需要使用带有认证信息的工具,只需在运行时添加认证信息。具体参数格式可以在API文档中找到。更多详细信息请参考测试用例:Run With Auth ActionOpen Assistant API拥有活跃的社区支持:
加入Slack频道,了解新版本、讨论问题并参与社区互动。加入Discord频道与其他社区成员交流。加入微信群:Open Assistant API的开发过程中参考和依赖了多个优秀的开源项目:
OpenOpenAI: Node实现的Assistant APIOne API: 多模型管理工具R2R: RAG引擎OpenAI-Python: OpenAI Python客户端OpenAI API: OpenAI接口定义LangChain: LLM应用开发库OpenGPTs: LangChain GPTsTaskingAI: TaskingAI客户端SDKOpen Assistant API欢迎社区贡献。如果您想为项目做出贡献,请阅读贡献文档了解如何参与。
Open Assistant API遵循MIT开源许可。更多信息请参见LICENSE文件。
Open Assistant API为开发者提供了一个强大、灵活且开放的智能助手API框架。通过开源和自托管的方式,它不仅保护了数据隐私和安全,还为开发者提供了无限的定制和扩展可能。无论您是想构建一个简单的聊天机器人,还是复杂的AI驱动应用,Open Assistant API都能为您提供所需的工具和灵活性。
随着AI技术的不断发展,Open Assistant API也将持续evolve,为开发者社区带来更多创新和可能性。我们期待看到更多基于Open Assistant API构建的令人惊叹的AI应用,也欢迎更多开发者加入到这个开源项目中来,共同推动智能助手技术的发展。
立即开始使用Open Assistant API,探索AI应用开发的无限可能吧!
下一篇: 最后一页
字节跳动的SeedEdit 和谷歌的Gemini 2.0 Flash对比,哪个更强
2025-05-03
2025-05-05
Step-Video-TI2V:阶跃星辰开源的一款AI文生视频和图生视频模型
2025-05-01
2025-05-04
2025-05-08
2025-05-03
2025-05-05
2025-05-01
2025-05-04
ChainForge:开源可视化提示工程和LLM假设测试工具包
2025-05-08