Lexamp API 文件
概述
Lexamp API 提供對我們法律 AI 服務的程式化存取。使用我們與 OpenAI 相容的 API 建構強大的法律應用程式。
基礎 URL
https://lexamp.net/
認證
所有 API 請求都需要使用 API 金鑰進行認證。在 Authorization 請求標頭中包含您的 API 金鑰:
Authorization: Bearer YOUR_API_KEY
您可以在開發者控制台中建立和管理 API 金鑰。
安全最佳實務
- 切勿在用戶端程式碼或公開儲存庫中暴露 API 金鑰
- 使用環境變數儲存金鑰
- 定期輪換金鑰並撤銷未使用的金鑰
- 為開發和生產環境使用不同的金鑰
端點
列出模型
GET /v1/models
傳回可用模型列表。
回應:
{
"object": "list",
"data": [
{
"id": "legal-rag",
"object": "model",
"created": 1700000000,
"owned_by": "lexamp"
}
]
}
對話補全
POST /v1/chat/completions
使用法律 AI 模型產生對話回應。
請求參數:
| 參數 | 類型 | 必需 | 描述 |
|---|---|---|---|
| model | string | 是 | 模型 ID(使用 "legal-rag") |
| messages | array | 是 | 訊息物件陣列 |
| temperature | number | 否 | 取樣溫度(0-2,預設:1.0) |
| top_p | number | 否 | 核取樣(0-1,預設:1.0) |
| n | number | 否 | 產生數量(1-128,預設:1) |
| stream | boolean | 否 | 啟用串流傳輸(預設:false) |
| stop | string/array | 否 | 停止序列 |
| max_tokens | number | 否 | 最大產生 token 數 |
| presence_penalty | number | 否 | 存在懲罰(-2 到 2,預設:0) |
| frequency_penalty | number | 否 | 頻率懲罰(-2 到 2,預設:0) |
| user | string | 否 | 使用者識別碼,用於工作階段管理 |
訊息物件:
| 欄位 | 類型 | 必需 | 描述 |
|---|---|---|---|
| role | string | 是 | 角色:"system"、"user"、"assistant"、"tool" |
| content | string | 否 | 訊息內容 |
| name | string | 否 | 選用名稱識別碼 |
請求範例:
{
"model": "legal-rag",
"messages": [
{"role": "system", "content": "你是一個專業的法律助手。"},
{"role": "user", "content": "什麼是保密協議?"}
],
"temperature": 0.7,
"max_tokens": 1000
}
回應:
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1700000000,
"model": "legal-rag",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "保密協議(NDA)是..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 150,
"total_tokens": 175
}
}
重置工作階段
POST /v1/sessions/{session_id}/reset
重置對話工作階段以重新開始。
路徑參數:
| 參數 | 類型 | 描述 |
|---|---|---|
| session_id | string | 要重置的工作階段識別碼 |
回應:
{
"status": "success",
"message": "Session abc123 reset"
}
健康檢查
GET /health
檢查 API 服務健康狀態。
回應:
{
"status": "healthy",
"timestamp": "2024-01-01T12:00:00Z"
}
串流傳輸
當設定 stream: true 時,API 傳回伺服器傳送事件(SSE)。每個事件包含回應的一部分:
data: {"id":"chatcmpl-abc","object":"chat.completion.chunk","created":1700000000,"model":"legal-rag","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc","object":"chat.completion.chunk","created":1700000000,"model":"legal-rag","choices":[{"index":0,"delta":{"content":"保"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc","object":"chat.completion.chunk","created":1700000000,"model":"legal-rag","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]
定價
| 項目 | 價格 |
|---|---|
| 輸入 token | $8 / 百萬 tokens |
| 輸出 token | $25 / 百萬 tokens |
| 法律資料庫搜尋 | $0.005 / 次請求 |
速率限制
速率限制根據訂閱層級而定:
| 層級 | 請求/分鐘 | 用量 |
|---|---|---|
| 免費 | 10 | 100 次請求/月 |
| 入門 | 60 | 按量付費 |
| 專業 | 300 | 按量付費 |
| 企業 | 自訂 | 按量付費 |
錯誤處理
當發生錯誤時,API 傳回包含錯誤代碼和訊息的 JSON 物件:
{
"error": {
"code": "rate_limit_exceeded",
"message": "您已超出速率限制。",
"type": "rate_limit_exceeded"
}
}
HTTP 狀態碼
| 狀態碼 | 描述 |
|---|---|
| 200 | 成功 |
| 400 | 錯誤請求 - 無效參數 |
| 401 | 未授權 - 無效的 API 金鑰 |
| 402 | 需要付款 - 餘額不足 |
| 403 | 禁止存取 - 金鑰未啟用、已過期或 IP 不在白名單 |
| 429 | 速率限制 - 請求過多或超出每日/每月限制 |
| 500 | 伺服器錯誤 |
錯誤代碼
| 代碼 | 描述 |
|---|---|
| INVALID_API_KEY | API 金鑰無效 |
| INVALID_KEY_FORMAT | API 金鑰格式不正確 |
| AUTH_FAILED | 認證失敗 |
| KEY_INACTIVE | API 金鑰已停用 |
| KEY_EXPIRED | API 金鑰已過期 |
| ACCOUNT_INACTIVE | 帳戶未啟用 |
| PERMISSION_DENIED | API 金鑰缺少所需權限 |
| IP_NOT_ALLOWED | 請求 IP 不在白名單中 |
| INSUFFICIENT_BALANCE | 帳戶餘額不足 |
| RATE_LIMIT_EXCEEDED | 超出每分鐘速率限制 |
| DAILY_LIMIT_EXCEEDED | 超出每日請求限制 |
| MONTHLY_LIMIT_EXCEEDED | 超出每月請求限制 |
支援
如有問題,請聯繫我們的支援團隊或造訪開發者控制台。