CopilotKit/aimock
Mock everything your AI app talks to — LLM APIs, MCP, A2A, AG-UI, vector DBs, search. One package, one port, zero dependencies.
What it solves
測試 AI 應用程式往往因依賴即時 LLM API 與其他 AI 服務而成本高、速度慢且結果不確定。aimock 提供完整的模擬基礎設施,讓開發者能在本地模擬這些服務,省去真實 API 金鑰、網路呼叫以及即時生產 API 的費用。
How it works
aimock 作為本地伺服器,模仿多家 AI 供應商的 API 介面。只要將 AI SDK(例如 OpenAI)的 BASE_URL 改為指向 aimock 伺服器,應用程式就會把請求發送到模擬伺服器而非真實供應商。它使用「fixtures」——預先定義的請求-回應配對,回傳確定性的結果。它亦提供錄製與重放模式,能代理真實 API 呼叫並將其儲存為 fixtures,以供未來確定性重放。
Who it’s for
開發 AI 代理、LLM 驅動的應用程式與多模態 AI 工具的開發者,需要可靠、快速且具成本效益的方式來執行單元測試與端對端測試,而不必觸及即時生產端點。
Highlights
- Broad Provider Support: 模擬 13 家供應商的 15 種 API 介面,包括 OpenAI、Claude、Gemini、Bedrock、Azure、Vertex AI 與 Ollama。
- Multimodal Capabilities: 支援影像生成(DALL‑E、Imagen)、文字轉語音、音訊轉錄與影片生成的模擬。
- Protocol Mocking: 除了 LLM,亦模擬 MCP 工具、A2A(Agent‑to‑Agent)協定、AG‑UI 事件串流與向量資料庫(Pinecone、Qdrant、ChromaDB)。
- Deterministic Testing: 包含具時間感知的錄製與重放功能,以及多輪對話匹配。
- Chaos Testing: 能模擬 500 錯誤、JSON 格式錯誤與串流中斷,以測試應用程式的韌性。
- Scaling & Integration: 提供 Docker/Helm 圖表供 CI/CD 使用、Vitest/Jest 插件,以及 GitHub Action,讓測試流程無縫整合。