FastAPI + Docker+ Python 3.8++ Git+ Docker Compose

Docker Compose 一键拉起 TaskingAI LLM Agent BaaS 全栈服务

Docker Compose 编排后端容器化服务,FastAPI 提供异步高并发 API,Python SDK 给客户端调用 RESTful 接口。

✓ 一键启动全栈 BaaS 服务✓ 异步架构支持高并发 ✕ 需自备 Docker 与 Python

方案简介

Docker Compose 一键拉起 TaskingAI LLM Agent BaaS 全栈服务。Docker Compose 编排后端容器化服务,FastAPI 提供异步高并发 API,Python SDK 给客户端调用 RESTful 接口。

亮点与能力

根据 README 列出的能力,本方案能提供:

  • 统一接入多模型:通过统一 API 访问 OpenAI、Anthropic 等上百种 LLM,也支持 Ollama、LM Studio、Local AI 等本地模型。
  • 模块化解耦管理:Tools、RAG 系统、语言模型与 Agent 解耦,可自由组合构建 Agent。
  • 多租户支持:开发完成后可直接用于多租户场景,无需自管云服务。
  • BaaS 风格工作流:AI 逻辑(服务端)与产品开发(客户端)分离,从控制台原型到 RESTful API + SDK 规模化路径清晰。
  • 一键部署到生产:单点击部署 AI Agent 并弹性扩缩。
  • 异步高效:基于 Python FastAPI 异步特性,提升并发性能与响应能力。
  • 可视化控制台:内置 UI Console 简化项目管理并支持在控制台内测试 workflow。

组成与分工

  • Docker:作为容器运行时,承载 TaskingAI 自托管社区版的全部后端服务。
  • Docker Compose:编排多容器启动链路,通过 -p taskingai 统一管理项目命名空间。
  • TaskingAI 后端服务(FastAPI):提供异步 RESTful API,承载模型调用、Tools、RAG、Assistant 等核心能力。
  • TaskingAI Console:浏览器端 UI 界面,用于项目管理与工作流调试,默认监听 8080 端口。
  • Python SDK(PyPI 包 taskingai:客户端 SDK,封装 RESTful API 调用,便于在 Python 工程中集成。
  • .env 配置文件:通过 .env.example 复制生成,集中管理服务所需环境变量。
  • Git:用于克隆仓库与拉取升级版本。

前置要求

在开始部署前,请确保本机已具备:

  • Docker 与 Docker Compose 已安装
  • Git(用于克隆仓库)
  • Python 3.8 及以上环境(用于运行客户端 SDK)

实施步骤

1. 克隆仓库

先从 GitHub 上拉取 TaskingAI 社区版仓库:

git clone https://github.com/taskingai/taskingai.git
cd taskingai

2. 进入 docker 目录

进入仓库内的 docker 子目录:

cd docker

3. 复制并编辑环境变量文件

将示例配置复制为实际配置文件:

cp .env.example .env

打开 .env 文件,根据需要修改配置,确保所有必需的环境变量都已正确设置。

4. 启动 Docker Compose

执行以下命令在后台拉起全部服务:

docker-compose -p taskingai --env-file .env up -d

5. 访问控制台

服务启动后,通过浏览器访问 http://localhost:8080,使用默认账号 admin / TaskingAI321 登录控制台。

使用与配置要点

部署成功后,可通过以下方式使用与验证:

  • 访问控制台:浏览器打开 http://localhost:8080,默认账号 admin / TaskingAI321
  • 管理模型、Tools、RAG、Assistant:在 UI Console 中统一管理模块化组件,参考 README 所述 Tools、RAG 系统与 Assistant 的解耦管理方式。
  • 调用统一 API:通过 RESTful API 接入 OpenAI、Anthropic 等模型,或接入 Ollama、LM Studio、Local AI 等本地模型。
  • 客户端 SDK:通过 PyPI 安装 taskingai 包后,在 Python 项目中以 SDK 方式调用后端能力。
  • 升级版本:在 docker 目录下执行 git pull origin master 拉取新版,再依次执行 downpullup -d 完成升级:
git pull origin master
cd docker
docker-compose -p taskingai down
docker-compose -p taskingai pull
docker-compose -p taskingai --env-file .env up -d

升级过程会自动迁移数据到最新 schema,无需担心数据丢失。

注意事项与常见问题

  • 数据迁移:升级到新版本时,README 明确说明数据会自动迁移到最新版本 schema。
  • 模块解耦:与 LangChain 等框架的“Statelessness”痛点不同,TaskingAI 把 Tools、RAG、模型与会话状态解耦以支持多租户。
  • 模型锁定规避:相比 OpenAI Assistant API 仅限 OpenAI 模型,TaskingAI 通过统一 API 同时支持多家厂商与本地模型。
  • BaaS 定位:README 强调 AI 逻辑(服务端)与产品开发(客户端)分离,Console 用于原型阶段,正式上线通过 RESTful API + Client SDK 提供给多租户应用。

优缺点

  • ✓ 一键启动全栈 BaaS 服务
  • ✓ 异步架构支持高并发
  • ✕ 需自备 Docker 与 Python

出处

本方案挖掘自开源项目 TaskingAI/TaskingAI,方案内容与实施命令均来自其 README 原文。

方案出处
TaskingAI/TaskingAI:The open source platform for AI-native application development.
5404 star The open source platform for AI-native application development.

本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。