FastAgent

FastAgent

这是一个基于FastAPI的轻量级、快速、高并发的 Agent 框架。与使用 LangChain 或 AutoGen 不同,它将一组API视为工具,直接从这些API中提取参数,然后调用相应的API接口。

特点 😎

  • 默认情况下,标签中包含"tool"的接口被视为可调用工具。
  • 如果工具无法调用,则返回最终答案。最终答案可能是要求用户提供更多信息,或者基于大模型自身的能力直接回答用户的问题。
  • ReAct,进行计划和推理。
  • 使用LightRAG,比GraphRAG更快。
  • 基于FastAPI的异步高并发。

快速开始 🚀

  • 下载仓库
git clone https://github.com/StudyExchange/fastagent.git
  • 安装依赖
cd fastagent
pip install -r requirements.txt
  • 设置环境变量
export OPENAI_API_KEY="sk-xxx"
export OPENAI_BASE_URL="https://xxx/v1"
export OPENAI_MODEL_NAME="gpt-4o-mini"

或者在Windows上

set OPENAI_API_KEY="sk-xxx"
set OPENAI_BASE_URL="https://xxx/v1"
set OPENAI_MODEL_NAME="gpt-4o-mini"

或者使用pydantic_settings的.env文件

OPENAI_API_KEY="sk-xxx"
OPENAI_BASE_URL="https://xxx/v1"
OPENAI_MODEL_NAME="gpt-4o-mini"

或者在VSCode的launch.json中设置环境变量

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: 当前文件",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true,
            "env": {
                "PYTHONPATH": "${workspaceFolder}",
                "OPENAI_API_KEY": "sk-xxx",
                "OPENAI_BASE_URL": "https://xxx/v1",
                "OPENAI_MODEL_NAME": "gpt-4o-mini",
            },
        }
    ]
}
  • 启动
python main.py

或者

uvicorn main:app --host 0.0.0.0 --port 8000

使用方法

  • 在本地浏览器中打开 http://127.0.0.1:8000/frontend
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 更新LightRAG知识库中的文档
python -m services.rag_service

Swagger文档

在本地浏览器中打开 http://127.0.0.1:8000/docs
在这里插入图片描述

Docker

  • create .envfile at project folder, or setup environments when docker container start
OPENAI_API_KEY="sk-xxx"
OPENAI_BASE_URL="https://xxx/v1"
OPENAI_MODEL_NAME="gpt-4o-mini"
  • build
docker build -t fastagent .
  • docker run
docker run -it -p 8000:8000 fastagent

or

docker run -it -p 8000:8000 \
  -e OPENAI_API_KEY="sk-xxx" \
  -e OPENAI_BASE_URL="https://xxx/v1" \
  -e OPENAI_MODEL_NAME="gpt-4o-mini" \
  fastagent

支持的LLM

  • GPT
  • Qwen
  • GLM
  • 其他符合标准OpenAI API的LLM

开发 🛠️

  • 克隆仓库
  • 在VSCode中打开项目文件夹
  • 创建conda环境并选择环境
  • pip install -r requirements.txt
  • 开发新的API作为工具
  • 修改提示词以进行自定义高级开发

测试

  • 运行pytest
pytest --cov --cov-report=term --cov-report=html
  • 打开htmlcov/index.html文件以查看代码覆盖率

贡献

欢迎贡献!请随时提交Pull Request。

许可证

本项目采用MIT许可证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值