Skip to content

A framework that simplifies the process of connecting developers with large models 简化开发者与大模型对接流程的框架

Notifications You must be signed in to change notification settings

greenflute/yuruotong-xbrain

 
 

Repository files navigation

XBrain

让 Python 函数秒接入 AI

📘详细文档|🎞️介绍视频|🗨English

🤔解决了什么问题

如果你用LangChain开发Agent应用,需要以下四步:

  1. 基础组件设置
  2. 定义工具集
  3. 定义Prompt模板
  4. 定义输出解析器

如果你用swarm开发Agent应用,需要以下四步:

  1. 基础组件设置
  2. Agent角色定义
  3. 任务协调系统
  4. 工作流程实现

但是,如果你用xbrain开发Agent应用,一切将变得非常美好,只需要两步:

  1. 在自己的函数上加入装饰器
  2. 入口处配置并运行 xbrain

👥用户故事

  • AI 接口封装: 独立 AI 函数快速封装为 HTTP 服务,便于集成到其他系统中;
  • 功能验证: 早期开发阶段原型设计与测试,无需搭建复杂后端;
  • 轻量化微服务改造: 适合将 Python 脚本微服务化,轻松满足小规模、灵活部署需求。

✨特点

  • 一键安装,开箱即用: 命令行一键启动,简单易用;
  • 无提示词设计: 摒弃提示词书写,用户专注于业务开发;
  • 将python函数接入Tools Call: 将本地 Python 代码直接接入大模型的工具调用。

📄文档

Quick Start

在你的项目目录下创建一个demo.py文件,写入以下代码:

from pydantic import BaseModel
from xbrain.core import xbrain_tool
class GenerateTag(BaseModel):
    """创建一个新的插件"""
    pass

@xbrain_tool.Tool(model=GenerateTag)
def generate_tag():
    print("hello")

__init__.py文件中导入demo.py

from demo import *

在项目入口处配置并运行xbrain,此时demo.py中的generate_tag函数被成功接入了xbrain中:

from xbrain.core.chat import run 
from xbrain.utils.config import Config
config = Config()
config.set_openai_config(base_url="https://api.openai-next.com/v1", api_key="xxxxx", model="gpt-4o-2024-08-06")
messages = []
messages.append({"role": "user", "content": "配置tag"})
res = run(messages, user_prompt="从文章中提炼出关键信息")

🤝 如何贡献

你可以通过 Fork 项目、提交 PR 或在 Issue 中提出你的想法和建议。具体操作可参考贡献指南

强烈推荐阅读 《提问的智慧》《如何向开源社区提问题》《如何有效地报告 Bug》《如何向开源项目提交无法解答的问题》,更好的问题更容易获得帮助。

About

A framework that simplifies the process of connecting developers with large models 简化开发者与大模型对接流程的框架

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 92.4%
  • Batchfile 4.6%
  • Shell 3.0%