首頁 >後端開發 >Python教學 >ChatsAPI — 世界上最快的人工智慧代理框架

ChatsAPI — 世界上最快的人工智慧代理框架

Barbara Streisand
Barbara Streisand原創
2024-12-11 11:26:11541瀏覽

GitHub: https://github.com/chatsapi/ChatsAPI
圖書館: https://pypi.org/project/chatsapi/

人工智慧改變了各行各業,但有效部署人工智慧仍然是一項艱鉅的挑戰。複雜的框架、緩慢的反應時間和陡峭的學習曲線給企業和開發人員帶來了障礙。 ChatsAPI 是一個突破性的高性能 AI 代理框架,旨在提供無與倫比的速度、靈活性和簡單性。

在本文中,我們將揭示 ChatsAPI 的獨特之處、為何它能夠改變遊戲規則,以及它如何幫助開發人員以無與倫比的輕鬆性和效率建立智慧系統。

ChatsAPI 有何獨特之處?

ChatsAPI 不僅僅是另一個人工智慧框架;這是人工智慧驅動互動的一場革命。原因如下:

  • 無與倫比的性能 ChatsAPI 利用 SBERT 嵌入、HNSWlib 和 BM25 混合搜尋來提供有史以來最快的查詢匹配系統。

速度:ChatsAPI 的回應時間為亞毫秒級,是全球最快的人工智慧代理框架。其 HNSWlib 支援的搜尋可確保快速檢索路線和知識,即使對於大型資料集也是如此。

效率:SBERT 和 BM25 的混合方法將語義理解與傳統排名系統結合起來,確保速度和準確性。

  • 與法學碩士無縫整合
    ChatsAPI 支援最先進的大型語言模型 (LLM),例如 OpenAI、Gemini、LlamaAPI 和 Ollama。它簡化了將法學碩士整合到您的應用程式中的複雜性,使您能夠專注於建立更好的體驗。

  • 動態路由匹配
    ChatsAPI 使用自然語言理解 (NLU) 以無與倫比的精確度將使用者查詢與預定義路由動態配對。

使用 @trigger 等裝飾器輕鬆註冊路線。

使用 @extract 進行參數提取來簡化輸入處理,無論您的用例有多複雜。

  • 設計簡單 我們相信強大和簡單可以共存。透過 ChatsAPI,開發人員可以在幾分鐘內建立強大的人工智慧驅動系統。無需再為複雜的設定或配置而苦惱。

ChatsAPI的優點

高效能查詢處理
傳統的人工智慧系統要么在速度上要么在準確性上苦苦掙扎,而 ChatsAPI 卻同時滿足了這兩點。無論是在龐大的知識庫中尋找最佳匹配,還是處理大量查詢,ChatsAPI 都表現出色。

靈活的框架
ChatsAPI 適應任何用例,無論您正在建置:

  • 客戶支援聊天機器人。
  • 智慧搜尋系統。
  • 人工智慧驅動的電子商務、醫​​療保健或教育助理。

為開發者打造

由開發者設計,為開發者服務,ChatsAPI 提供:

  • 快速入門:只需幾個步驟即可設定環境、定義路線並上線。
  • 客製化:使用裝飾器自訂行為並根據您的特定需求微調效能。
  • 輕鬆的 LLM 整合:輕鬆在 OpenAI 或 Gemini 等支援的 LLM 之間切換。

ChatsAPI 如何運作?

ChatsAPI 的核心是透過三個步驟來操作:

  1. 註冊路由:使用@trigger裝飾器定義路由並將它們與您的函數關聯。
  2. 搜尋和匹配:ChatsAPI 使用 SBERT 嵌入和 BM25 混合搜尋將使用者輸入與正確的路線動態配對。
  3. 擷取參數:透過@extract裝飾器,ChatsAPI自動擷取並驗證參數,更容易處理複雜的輸入。

結果呢?一個快速、準確且易於使用的系統。

使用案例

  • 客戶支援
    透過極快的查詢解析來自動化客戶互動。 ChatsAPI 確保用戶立即獲得相關答案,提高滿意度並降低營運成本。

  • 知識庫搜尋
    使用戶能夠透過語義理解搜尋大量知識庫。混合 SBERT-BM25 方法可確保準確、情境感知的結果。

  • 對話式人工智慧
    建立能夠即時理解並適應用戶輸入的對話式人工智慧代理。 ChatsAPI 與頂尖法學碩士無縫集成,提供自然、引人入勝的對話。

為什麼你應該關心?

其他框架承諾靈活性或效能 - 但沒有一個框架能夠像 ChatsAPI 一樣同時提供這兩者。我們創建了一個框架:

  • 比市面上任何其他產品都快
  • 更簡單設定和使用。
  • 更聰明,其獨特的混合搜尋引擎融合了語義和基於關鍵字的方法。

ChatsAPI 讓開發人員能夠釋放人工智慧的全部潛力,而無需擔心複雜性或效能緩慢的問題。

如何開始

ChatsAPI 入門很簡單:

  • 安裝框架:
pip install chatsapi
  • 定義您的路線:
from chatsapi import ChatsAPI  

chat = ChatsAPI()  

@chat.trigger("Hello")  
async def greet(input_text):  
    return "Hi there!"
  • 從訊息中提取一些數據
from chatsapi import ChatsAPI  

chat = ChatsAPI()  

@chat.trigger("Need help with account settings.")
@chat.extract([
    ("account_number", "Account number (a nine digit number)", int, None),
    ("holder_name", "Account holder's name (a person name)", str, None)
])
async def account_help(chat_message: str, extracted: dict):
    return {"message": chat_message, "extracted": extracted}
Run your message (with no LLM)
@app.post("/chat")
async def message(request: RequestModel, response: Response):
    reply = await chat.run(request.message)
    return {"message": reply}
  • 對話(與法學碩士)—完整範例
import os
from dotenv import load_dotenv
from fastapi import FastAPI, Request, Response
from pydantic import BaseModel
from chatsapi.chatsapi import ChatsAPI

# Load environment variables from .env file
load_dotenv()

app = FastAPI()                 # instantiate FastAPI or your web framework
chat = ChatsAPI(                # instantiate ChatsAPI
    llm_type="gemini",
    llm_model="models/gemini-pro",
    llm_api_key=os.getenv("GOOGLE_API_KEY"),
)

# chat trigger - 1
@chat.trigger("Want to cancel a credit card.")
@chat.extract([("card_number", "Credit card number (a 12 digit number)", str, None)])
async def cancel_credit_card(chat_message: str, extracted: dict):
    return {"message": chat_message, "extracted": extracted}

# chat trigger - 2
@chat.trigger("Need help with account settings.")
@chat.extract([
    ("account_number", "Account number (a nine digit number)", int, None),
    ("holder_name", "Account holder's name (a person name)", str, None)
])
async def account_help(chat_message: str, extracted: dict):
    return {"message": chat_message, "extracted": extracted}

# request model
class RequestModel(BaseModel):
    message: str

# chat conversation
@app.post("/chat")
async def message(request: RequestModel, response: Response, http_request: Request):
    session_id = http_request.cookies.get("session_id")
    reply = await chat.conversation(request.message, session_id)

    return {"message": f"{reply}"}

# set chat session
@app.post("/set-session")
def set_session(response: Response):
    session_id = chat.set_session()
    response.set_cookie(key="session_id", value=session_id)
    return {"message": "Session set"}

# end chat session
@app.post("/end-session")
def end_session(response: Response, http_request: Request):
    session_id = http_request.cookies.get("session_id")
    chat.end_session(session_id)
    response.delete_cookie("session_id")
    return {"message": "Session ended"}
  • 遵循 LLM 查詢的路由 — 單一查詢
await chat.query(request.message)

基準測試

基於傳統 LLM (API) 的方法通常每個請求需要大約四秒鐘的時間。相較之下,ChatsAPI 可以在一秒鐘內處理請求,通常在幾毫秒內,無需進行任何 LLM API 呼叫。

472ms內執行聊天路由任務(無快取)
ChatsAPI — The World’s Fastest AI Agent Framework

21ms內執行聊天路由任務(快取後)
ChatsAPI — The World’s Fastest AI Agent Framework

862ms內執行聊天路由資料擷取任務(無快取)
ChatsAPI — The World’s Fastest AI Agent Framework

使用 WhatsApp Cloud API 展示其對話能力
ChatsAPI — The World’s Fastest AI Agent Framework

ChatsAPI — 功能層次結構
ChatsAPI — The World’s Fastest AI Agent Framework

ChatsAPI 不僅僅是一個框架;這是我們建構人工智慧系統並與之互動的方式的典範轉移。透過結合速度、準確性和易用性,ChatsAPI 為 AI 代理框架樹立了新基準。

立刻加入這場革命,了解 ChatsAPI 為何正在改變 AI 格局。

準備好潛水了嗎?立即開始使用 ChatsAPI,體驗 AI 開發的未來。

以上是ChatsAPI — 世界上最快的人工智慧代理框架的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn