使用 Portkey 整合 Novita AI:全面指南

使用 Portkey 整合 Novita AI:全面指南

Portkey AI Gateway 徹底改變了開發者與各種 AI 模型(包括 Novita AI)互動的方式。這款強大的工具提供統一的介面,可存取多種語言模型,確保快速、可靠且安全的導向。在本全面指南中,我們將探討如何運用 Portkey AI Gateway 存取 Novita AI API,簡化您的 AI 開發流程,並提升應用程式的效能。

1. 認識 Portkey AI Gateway

Portkey AI Gateway 是您應用程式與各種 AI 模型(包括 Novita AI)之間強大的中介層。它專為簡化整合流程而設計,提供支援超過 1600 種語言、視覺、音訊和影像模型的統一 API。憑藉輕量級、開源特性,Portkey 讓開發者能在兩分鐘內整合任何語言模型。

Portkey AI Gateway 的主要特色包括:

  • 閃電般的效能,延遲低於 1 毫秒
  • 僅 122kb 的極小體積
  • 經過嚴苛考驗的基礎架構,每日處理超過 100 億個 token
  • 企業級功能,包括強化安全性與自訂部署

2. 主要功能與優點

Portkey AI Gateway 提供眾多功能,大幅提升 AI 應用程式的開發與部署:

  1. 統一 API: 透過單一一致的介面整合多個 AI 供應商,包括 Novita AI。
  2. 自動重試與備援: 防止停機,確保 AI 服務的高可用性。
  3. 負載平衡與條件式路由: 將請求分散至多個供應商或模型,有效擴展 AI 應用程式。
  4. 護欄: 實作內容過濾與輸出驗證,維持品質與安全標準。
  5. 多模態能力: 擴展至文字模型之外,支援視覺、音訊和影像處理。
  6. 代理工作流程整合: 探索進階 AI 代理框架,用於複雜應用程式。

這些功能共同促成更快的開發週期、更高的可靠性,以及 AI 驅動應用程式的效能提升。

3. 設定 Portkey AI Gateway

設定 Portkey AI Gateway 是一個直觀的過程,包含三個主要步驟:設定閘道、發出第一個請求,以及配置路由與護欄。

設定您的 AI Gateway

要在本地執行閘道,您需要安裝 Node.js 和 npm。接著,執行以下命令:

npx @portkey-ai/gateway

啟動後,您會看到兩個重要的 URL:

  • 閘道:http://localhost:8787/v1
  • 閘道控制台:http://localhost:8787/public/

發出第一個請求

首先,安裝 Portkey AI Python 函式庫:

pip install -qU portkey-ai

然後,使用以下 Python 程式碼發出第一個請求:

from portkey_ai import Portkey

# OpenAI 相容客戶端
client = Portkey(
    provider="openai", # 或 'anthropic', 'bedrock', 'groq' 等
    Authorization="sk-***" # 供應商的 API 金鑰
)

# 透過您的 AI Gateway 發出請求
client.chat.completions.create(
    messages=[{"role": "user", "content": "What's the weather like?"}],
    model="gpt-4o-mini"
)

您可以使用閘道控制台(網址 http://localhost:8787/public/)集中檢視所有本機記錄。

路由與護欄

Portkey AI Gateway 允許您設定路由規則、加入可靠性功能,並實作護欄。以下是一個配置範例:

config = {
  "retry": {"attempts": 5},

  "output_guardrails": [{
    "default.contains": {"operator": "none", "words": ["Apple"]},
    "deny": True
  }]
}

# 將配置附加到客戶端
client = client.with_options(config=config)

client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Reply randomly with Apple or Bat"}]
)

# 在此範例中,護欄會拒絕所有包含 "Apple" 的回覆,因此回應永遠是 "Bat"。重試配置會嘗試請求最多 5 次,然後放棄。

AI Gateway

4. 將 Novita AI API 與 Portkey 整合

要透過 Portkey AI Gateway 存取 Novita AI API,請遵循以下步驟:

安裝 Portkey SDK

在您的應用程式中加入 Portkey SDK,以便透過 Portkey 閘道與 Novita AI API 互動。

Node.JS

npm install --save portkey-ai

Python

pip install portkey-ai

使用虛擬金鑰初始化 Portkey

若要透過 Portkey 使用 Novita AI,請從 Novita AI 取得您的 LLM API 金鑰,然後將其新增至 Portkey 以建立虛擬金鑰。

Node.JS SDK

import Portkey from 'portkey-ai'

const portkey = new Portkey({
  apiKey: "PORTKEY_API_KEY",  // 替換為您的 Portkey API 金鑰
  virtualKey: "VIRTUAL_KEY"   // 替換為您用於 Novita AI 的虛擬金鑰
})

Python SDK

from portkey_ai import Portkey

portkey = Portkey(
    api_key="PORTKEY_API_KEY",  # 替換為您的 Portkey API 金鑰
    virtual_key="VIRTUAL_KEY"   # 替換為您用於 Novita AI 的虛擬金鑰
)

使用 Novita AI 呼叫聊天補全

使用 Portkey 實例向 Novita AI 發送請求。如有需要,您也可以在 API 呼叫中直接覆寫虛擬金鑰。

Node.JS SDK

const chatCompletion = await portkey.chat.completions.create({
  messages: [{ role: 'user', content: 'Say this is a test' }],
  model: 'Nous-Hermes-2-Mixtral-8x7B-DPO'
});

console.log(chatCompletion.choices);

Python SDK

completion = portkey.chat.completions.create(
    messages= [{ "role": 'user', "content": 'Say this is a test' }],
    model= 'reka-core'
)

print(completion)

5. 實用資源

為進一步加深您對 Portkey AI Gateway 與 Novita AI 搭配使用的理解,建議參考以下有價值的資源:

  1. Portkey AI Gateway GitHub 儲存庫 隨時掌握最新的拉取請求、功能與改進。
  2. Portkey AI 的 Novita AI 整合文件 關於整合 Novita AI 與 Portkey 的完整指南,包含 SDK 使用方式與支援的模型。
  3. Portkey AI 部落格 存取與 AI 整合及最佳實務相關的精闢文章、教學與更新。
  4. Novita AI API 文件 參考官方 Novita AI 文件,了解其 LLM API 與模型規格的詳細資訊。

這些資源提供了豐富的資訊,有助於您透過 Portkey AI Gateway 充分發揮 Novita AI 的潛力,確保您走在 AI 整合與開發的前沿。

6. 結論

將 Novita AI API 與 Portkey AI Gateway 整合,是提升 AI 應用程式效能的一種無縫且高效的方式。遵循本指南中的步驟,您可以運用 Portkey AI Gateway 的強大功能,簡化開發流程、改善效能並確保可靠性。無論您使用的是文字、視覺、音訊還是影像模型,Portkey AI Gateway 都提供了統一的介面,簡化了多個 AI 供應商的整合。

透過持續關注最新的資源與最佳實務,您可以持續最佳化 AI 應用程式,並在快速演進的 AI 整合與開發領域中保持領先。擁抱 Portkey AI Gateway 與 Novita AI 的能力,打造創新且穩健的 AI 解決方案。

Novita AI 是 AI 雲端平台,為開發者提供透過簡單 API 部署 AI 模型的簡便方式,同時也提供經濟實惠且可靠的 GPU 雲端,用於建構與擴展應用程式。