傳輸與部署
- 規範性
- 草案 1.0
- 更新於
- 檢視 Markdown
2.1 預設部署
服務預設必須監聽回送位址 127.0.0.1 和 ::1。約定連線埠為 17832,因此預設基礎位址是 http://127.0.0.1:17832。
| 專案 | 取值 |
|---|---|
| 監聽位址 | 127.0.0.1 和 ::1 |
| 傳輸 | HTTP/1.1 或 HTTP/2,承載 JSON |
| 串流傳輸 | 伺服器傳送事件,Content-Type: text/event-stream |
| 核心介面字首 | /lmsp/v1 |
| OpenAI 相容介面字首 | /v1 |
| 服務描述 | GET /.well-known/lmsp.json |
| 機器可讀合約 | GET /lmsp/v1/openapi.json |
| 可選的本機通道 | Unix Domain Socket 或 Windows Named Pipe |
請求和回應使用 UTF-8 編碼的 JSON(Content-Type: application/json),流(text/event-stream)和錯誤(application/problem+json)除外。時間戳為整數:自 Unix 紀元起的秒數。識別碼是不透明字串;建議帶上 resp_、task_ 之類的型別字首。
介面合約是一份 OpenAPI 3.2 文件。OpenAPI 3.2 可以描述伺服器傳送事件、JSON Lines 和 JSON Sequence,因此串流介面與其餘介面在同一份文件中定義。本版本的合約發布在 /lmsp/1.0/openapi.json。
服務可以另外在 Unix Domain Socket 或 Windows Named Pipe 上接受連線,HTTP 語義相同。在 1.0 中,這類端點如何對外宣告交由擴充決定。
2.2 常駐執行
服務應由作業系統託管:macOS 使用 launchd,Linux 使用 systemd,Windows 使用 Windows Service。
服務行程與模型行程應分離。模型崩潰應只影響使用該模型的任務,不應導致服務發現、模型目錄和歷史任務查詢同時失效。