© 2026FindAgent  · @simprr
返回列表
c

cheshire-cat-ai/core

AI agent microservice

ag-ui-protocolagentaiassistantchatbotconversationaldockerframeworkfunction-callingllmmcpmcp-clientpluginpythonvector-search
⭐

3.0k

Stars

🔱

394

Forks

👁

35

Watchers

📋

14

Issues

PythonGPL-3.0创建于 2023/2/8更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

Cheshire Cat AI

🇮🇹 Stregatto - 🇨🇳 柴郡猫 - 🇮🇳 चेशायर बिल्ली - 🇷🇺 Чеширский кот

作为微服务的 AI agent

Cheshire Cat 是一个构建自定义 AI agent 的框架:

  • ⚡️ API 优先,轻松为您的应用程序添加对话层
  • 💬 通过 WebSocket 进行聊天,并使用可自定义的 REST API 管理您的 agent
  • 🐘 内置基于 Qdrant 的 RAG(检索增强生成)
  • 🚀 可通过插件扩展
  • 🪛 支持事件回调、函数调用 (tools) 和对话式表单
  • 🏛 易于使用的管理面板
  • 🌍 通过 langchain 支持任何语言模型
  • 👥 支持具有细粒度权限的多用户,兼容任何身份提供商
  • 🐋 100% 容器化 (Docker)
  • 🦄 活跃的 Discord 社区 和通俗易懂的 文档

快速开始

要让 Cheshire Cat 在您的机器上运行,您只需要安装 docker:

docker run --rm -it -p 1865:80 ghcr.io/cheshire-cat-ai/core:latest
  • 在 localhost:1865/admin 与 Cheshire Cat 聊天
  • 在 localhost:1865/docs 尝试 REST API

尽情享受这只猫带来的乐趣吧! 请按照 docker compose 和卷配置 的说明正确运行它。

最小插件示例

Hooks (事件)

from cat.mad_hatter.decorators import hook

# hooks 是一个事件系统,用于对您的助手进行精细控制
@hook
def agent_prompt_prefix(prefix, cat):
    prefix = """You are Marvin the socks seller, a poetic vendor of socks.
You are an expert in socks, and you reply with exactly one rhyme.
"""
    return prefix

工具 (Tools)

from cat.mad_hatter.decorators import tool

# 受 langchain 启发的工具(函数调用)
@tool(return_direct=True)
def socks_prices(color, cat):
    """How much do socks cost? Input is the sock color."""
    prices = {
        "black": 5,
        "white": 10,
        "pink": 50,
    }

    price = prices.get(color, 0)
    return f"{price} bucks, meeeow!" 

对话式表单示例

from pydantic import BaseModel
from cat.experimental.form import form, CatForm

# 用于填充的数据结构
class PizzaOrder(BaseModel):
    pizza_type: str
    phone: int

# 表单让您可以控制目标导向的对话
@form
class PizzaForm(CatForm):
    description = "Pizza Order"
    model_class = PizzaOrder
    start_examples = [
        "order a pizza!",
        "I want pizza"
    ]
    stop_examples = [
        "stop pizza order",
        "not hungry anymore",
    ]
    ask_confirm = True

    def submit(self, form_data):
        
        # 在此处执行实际的订购操作!

        # 返回对话
        return {
            "output": f"Pizza order on its way: {form_data}"
        }

文档与资源

  • 官方文档
  • Discord 服务器
  • 官方网站
  • 教程 - 编写您的第一个插件

开发路线图与贡献

注意:在 v2 版本开发期间,我们仅接受 v1 版本的 bug 修复。请将 v1 版本的 PR 发送到 develop 分支。 除非在 issue 中事先讨论并达成一致,否则请勿期望未讨论的 PR 会被合并。

详细的路线图在 这里。 请将您的 pull request 发送到 develop 分支。这是 贡献指南全文。

我们致力于开放、隐私和创造力,我们希望将 AI 带给长尾需求。如果您想了解更多关于我们的愿景和价值观的信息,请阅读 道德准则。

加入我们的 Discord 社区 并给项目加个星 ⭐! 再次感谢!🙏

许可证与商标

代码采用 GPL3 许可。 Cheshire Cat AI 的标识和名称均为 Piero Savastano(创始人及维护者)的财产。

该走哪条路?

(回到顶部)

"Would you tell me, please, which way I ought to go from here?"
"That depends a good deal on where you want to get to," said the Cat.
"I don't much care where--" said Alice.
"Then it doesn't matter which way you go," said the Cat.

(Alice's Adventures in Wonderland - Lewis Carroll)
贡献者
pPznnavpdz
项目信息
默认分支main
LicenseGNU General Public License v3.0
创建时间2023/2/8
最近更新今天
GAI 中文摘要

Cheshire Cat AI 是一个基于 Python 构建的开源 AI Agent 微服务框架,旨在为各类应用程序快速集成智能对话功能。它通过标准化的 API 和插件化架构,帮助开发者轻松构建可定制、支持向量搜索及工具调用的智能助手。

提供开箱即用的 REST API 和 WebSocket 接口,实现与 Agent 的实时交互。内置基于 Qdrant 的向量检索(RAG)功能,支持对私有数据进行知识库问答。拥有灵活的插件扩展机制,支持自定义 Hooks、函数调用(Tools)以及对话式表单。兼容 LangChain 生态,允许用户自由对接各种主流语言模型。具备多用户管理与权限控制能力,并提供全栈 Docker 化部署支持。

该框架非常适合需要快速集成对话式 AI 功能的开发者,广泛应用于企业级业务自动化、知识库问答系统以及多用户协同的定制化 AI 应用开发场景。