🧠 AI沙盒
构建本地AI代理的实验——探索LLM、MCP和代理工作流。
______________________________________________________________________
🚀 关于
这是一个个人学习项目,旨在探索人工智能代理如何端到端工作——从运行本地LLM到连接日历等现实世界工具。\ 目标是构建一个简单的、可工作的代理,可以回答以下问题:
“我今天的日程安排是什么?”
…通过推理、调用本地工具并自然响应。
______________________________________________________________________
🧩 技术栈(计划中)
- 语言: Types/Node.js
- 法学硕士: 本地模型(例如Ollama、LM Studio或兼容OpenAI的API)
- 代理框架: TBD(自定义或轻量级现有框架)
- 日历来源: 谷歌日历或本地.ics文件
- 评价: 自定义提示和行为测试
🛠️ 开发环境设置
该仓库现在附带了Express+TypeScript服务,可以作为轻量级的代理后端。
pnpm install # install dependencies
pnpm dev # start the local server with live reload可用路线:
GET /ping→ 回报pong用于健康检查POST /llm-query→ 接受纯文本提示,将其转发到配置的Ollama模型,并返回一个包含模型响应和延迟的JSON有效负载
质量命令:
pnpm lint # ESLint + TypeScript rules
pnpm test # Vitest coverage for HTTP handlers and Ollama client
pnpm build && pnpm start # compile to dist/ and run with Node直接查询本地LLM
Ollama在本地运行(默认 http://127.0.0.1:11434),您可以在没有Express服务器的情况下发送提示:
pnpm tsx src/scripts/send-prompt.ts "Summarise the repo goals in one sentence."需要时通过环境变量覆盖默认值:
OLLAMA_HOST(默认值http://127.0.0.1:11434)OLLAMA_MODEL(默认值llama3-groq-tool-use:8b)
______________________________________________________________________
🗺️ 里程碑
- \[x\] 里程碑0: 项目设置、研究、环境准备
- \[x\] 里程碑1: 运行本地LLM并发送简单提示
- \[ \] 里程碑2: 构建一个基本的工具调用机制(例如从日历中读取)
- \[ \] 里程碑3: 引入简单的“代理循环”逻辑
- \[ \] 里程碑4: 评估输出并改进推理
- \[ \] 伸展目标: 尝试MCP集成或多代理工作流
______________________________________________________________________
