跳到主要内容

OpenThai 2.0 Legal 配合 RAG 使用

完成本教程后,OpenThai 2.0 Legal 将依据你自己索引的泰国法条作答,并注明所引用的条文。正确条文在提示词中时,其 citation F1 为 0.99;仅凭记忆作答时为 0.07 至 0.40。托管 API 默认已对 39 部法律的语料进行检索;本教程适用于使用你自己的文档,或自行运行开放权重的场景。

决策辅助,而非法律意见

未接入检索时,模型依据记忆作答,可能引用错误条文或遗漏适用条文。接入检索后,模型只引用检索系统提供的条文,检索出错,回答也会随之出错。据此行动前,应由具备资质的专业人士对照现行法律核验每一处引用。

准备: Docker,以及一个免费的 iApp API 密钥(注册后进入 API Keys → Create New API Key)。

获取法条​

按条文(มาตรา)切分法条,每条一个 chunk,并附上 law_name 与 section 元数据,这正是模型引用训练时所用的格式。

路线 A:Open WebUI​

Open WebUI 提供内置检索的多用户聊天应用,约 15 分钟即可完成。

1. 运行 Open WebUI​

docker run -d -p 3000:8080 \
-v open-webui:/app/backend/data \
--name open-webui --restart always \
ghcr.io/open-webui/open-webui:main

打开 http://localhost:3000,创建管理员账户。

2. 连接模型​

进入 Admin Panel → Settings → Connections,用以下参数新增一个 OpenAI API 连接并保存,模型选择器中会出现 openthai2.0-legal。

API Base URL   https://api.iapp.co.th/v3/llm/openthai2p0-legal
API Key 你的 iApp API 密钥

3. 添加法条​

进入 Workspace → Knowledge,选择 + Create a Knowledge base(例如"泰国民商法典"),上传法条文件,每条一个 chunk。

4. 提问​

在与 openthai2.0-legal 的对话中输入 #,选择知识库,用泰语提问;答案会引用检索到的条文。

นาย ก. ขับรถประมาทชนรถนาย ข. ต้องรับผิดตามกฎหมายใด

路线 B:OpenThaiRAG​

OpenThaiRAG 是 OpenThaiGPT 社区面向泰语的开源 RAG 框架(项目主页),提供需自行集成的 REST API,约一小时即可完成。

1. 启动​

git clone https://github.com/OpenThaiGPT/openthairag
cd openthairag
docker-compose up -d

2. 指向模型​

把它的 LLM 后端设为下方的托管端点并填入 API 密钥,或指向你自己运行开放权重的 vLLM 服务。

https://api.iapp.co.th/v3/llm/openthai2p0-legal

3. 索引法条​

把法条以 .txt 文件放入 /docs 目录,然后运行索引脚本。

4. 提问​

curl --location 'http://localhost:5000/completions' \
--header 'Content-Type: application/json' \
--data '{"prompt": "ลักทรัพย์ในเวลากลางคืน ผิดมาตราใด", "max_tokens": 2048}'

下一步​

无论哪条路线,要获得最准确的引用,请使用模型页面上的 JSON 引用 system prompt,模型正是针对该格式做了强化学习训练。背景见发布文章。需要部署支持:sale@iapp.co.th · Discord