项目背景
随着人工智能大模型技术的快速发展,后端开发正逐渐向 AI 驱动转型。市面上现有的开源项目往往存在过度封装、复杂度高或灵活性不足的问题,导致普通开发者难以进行二次开发和深度定制。为了解决这一痛点,simple_ai_toolset 应运而生。这是一个专为普通后端程序员设计的 AI 大模型应用开发框架,旨在提供可控、灵活且易于集成的解决方案。
功能介绍
simple_ai_toolset 是一个基于 FastAPI 的 AI 大模型基本开发框架,功能对标 Coze 等低代码平台,但保留了代码级的可控性。核心功能包括:
- FastAPI 后端接口:高性能异步 API 服务。
- 搜索引擎对接:集成主流搜索引擎能力。
- RAG 文档解析和向量化:支持本地及云端知识库构建。
- RPA 和爬虫:自动化数据采集与处理。
- 自定义 Agent:可配置的智能体代理系统。
- 第三方数据接口:灵活的 API 对接机制。
- MongoDB 数据库:结构化数据存储。
- 控制 JSON 返回:基于 Pydantic 的输出格式约束。
- 多模态理解和生成:支持文本、图片等多种模态交互。
框架设计遵循快速迭代原则,一旦有新的 AI 技术趋势出现,将迅速跟进并集成到框架中。
AI 大模型应用开发理念
- 理解复杂,处理复杂,生成复杂:承认 AI 任务的复杂性,并提供工具链来管理这种复杂性。
- 确定性流程:尽量将不确定的 AI'黑盒'转化为更加确定性的可控流程和结果。
- 深度开发导向:原型开发容易,但真实可用的 AI 应用需要深入开发。本框架致力于满足生产级需求。
技术架构详解
1. 后端框架:FastAPI
FastAPI 是现代 Python Web 框架的首选,特别适合构建高性能的微服务和 AI 应用。其核心优势包括:
- 高性能:基于 Starlette 和 Pydantic,支持异步请求处理。
- 类型安全:利用 Python 类型提示自动推断数据类型,减少运行时错误。
- 交互式文档:自动生成 Swagger UI 和 ReDoc 文档。
- 依赖注入:强大的依赖注入系统,便于管理数据库连接和 LLM 实例。
为了应对 AI 资源有限的问题,框架集成了 slowapi 对 FastAPI 接口进行限速保护,防止恶意调用导致服务不可用。
同时,利用 pydantic 库对大模型输出进行严格校验。通过定义 Schema,可以强制指定 JSON 对象必须包含的属性、数据类型及默认值,从而将大模型的不确定性输出转化为结构化的可控数据。
2. Embedding 向量和 RAG 技术
RAG(Retrieval-Augmented Generation)技术由索引(Indexing)、检索(Retrieval)和生成(Generation)三部分组成。
索引(Indexing)
利用各大模型厂商提供的 Embeddings 技术,将非结构化知识数据转化为向量数据。本项目支持使用 llama_parse 等强大工具进行文档解析,确保知识整理的准确性。
检索(Retrieval) 内置多种向量数据库支持,包括本地文件存储、Pinecone 和 ChromaDB 等主流方案。Chunking(分段)策略是 RAG 成功的关键,框架提供了内置的自定义函数以及基于 LlamaIndex 的成熟方案,用户可根据实际场景选择最佳分段策略。
生成(Generation) 常规 RAG 的输入输出往往不可控,难以整合进现有业务系统。本框架的重点是通过自定义 Prompt 模板增强可控性。例如,在 QA 任务中,可以通过严格的 Prompt 工程限制回答格式、语言风格和引用来源。


