64bit/async-openai
Rust library for OpenAI
解決的問題
提供高效率的非同步 Rust 庫,用於與 OpenAI API 及其他 OpenAI 相容的提供者互動,無需手動撰寫 AI 服務的 HTTP 請求。
如何運作
基於 OpenAI OpenAPI 規範建構,使用直覺的建構器模式建立請求物件,並支援 Server-Sent Events (SSE) 以進行回應串流。整合 tower 生態系以支援中間件,並提供細緻的功能旗標,讓開發者僅包含所需的 API 類型或功能,進而減少二進位檔大小。
適用對象
需要為 OpenAI 或相容 LLM 提供者(例如 Microsoft Azure OpenAI Service)建構型別安全、原生非同步客戶端的 Rust 開發者,用於開發 AI 驅動的應用程式。
主要特色
- OpenAI 相容:支援自訂路徑、標頭與查詢參數,可與非 OpenAI 提供者協作。
- 韌性:針對限流請求提供指數退避的自動重試機制。
- 彈性類型:
byot(Bring Your Own Types)功能允許使用者使用自訂請求/回應類型(例如serde_json::Value),避免反序列化錯誤或處理非標準 API 結構。 - 廣泛的 API 支援:涵蓋 OpenAI 的多種服務,包括聊天補全、助理、即時、嵌入、微調與影像產生。
- WASM 支援:透過補助 crate 與 WebAssembly 相容。
- 可自訂 TLS:提供多種 TLS 後端選項(如 rustls、native-tls),以符合不同環境需求。
相關
- 專案
- 專案
- 專案
- 專案
- 專案