Skip to content

lenML/llmid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

image (2)

llmid

LLM 中间人调试代理。拦截 OpenAI 兼容 API 请求,提供可视化 Messages 调试界面。

功能

  • 请求拦截 — 自动记录所有经过代理的请求和响应
  • Messages 可视化 — 邮箱式布局,按 role 分色展示完整对话历史
  • Tool Calls 查看 — 点击展开工具调用的完整参数
  • 流式响应支持 — 自动解析 SSE 流,合并为结构化数据
  • 请求重放 — 一键重发请求,便于调试对比
  • 实时更新 — SSE 推送,请求到达即刻可见

快速启动

Docker Compose(推荐)

docker compose up -d

打开 http://localhost:3456

Docker

docker build -t llmid .
docker run -d -p 3456:3456 llmid

Node.js

node server.js

需要 Node.js 22+。

使用方法

将你的 OpenAI 客户端的 base_url 指向代理地址:

# 环境变量方式
export OPENAI_BASE_URL=http://localhost:3456/v1
export OPENAI_API_KEY=sk-your-key

# 或在代码中指定
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:3456/v1",
    api_key="sk-your-key",
)

response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Hello"}],
)

代理会自动将请求转发到目标服务(默认 https://api.openai.com),同时在 http://localhost:3456 提供调试界面。

配置

环境变量 默认值 说明
PORT 3456 监听端口
OPENAI_TARGET https://api.openai.com 目标 API 地址

代理到其他兼容服务:

OPENAI_TARGET=https://api.deepseek.com docker compose up -d

项目结构

llmid/
├── server.js          # 代理后端(Node.js)
├── index.html         # 调试前端(React + Zustand)
├── Dockerfile
├── docker-compose.yml
└── README.md

工作原理

Client ──→ llmid proxy ──→ OpenAI API
              │
              ├─ 记录请求
              ├─ 转发响应
              ├─ 解析流式数据
              └─ 推送到调试界面 (SSE)

License

MIT

About

llm middleman for debugging

Topics

Resources

License

Stars

Watchers

Forks

Contributors