LLM ed Embedders

Questa pagina presenta le interfacce astratte utilizzate per collegare LLM e incorporatori nella memoria dell'agente Oracle.

Interfaccia LLM

classe oracleagentmemory.apis.llms.ILlm

Basi: ABC

Interfaccia astratta per il richiamo LLM.

metodo generate (abstract)

Genera una risposta da un LLM in modo sincrono.

metodo generate_async (abstract, asincrono)

Genera in modo asincrono una risposta da un LLM.

Risposte LLM

classe oracleagentmemory.apis.llms.LlmResponse

Basi: object

Una piccola risposta normalizzata restituita da ILlm.

Testo

Contenuto di testo generato principale.

Interfaccia incorporamento

classe oracleagentmemory.apis.IEmbedder

Basi: ABC

Interfaccia astratta per gli incorporatori di testo.

metodo embed (abstract)

Incorpora un batch di testi in un array 2D float32 NumPy.

metodo embed_async (abstract, asincrono)

Incorpora un batch di testi in un array 2D float32 NumPy.

Adattatori LiteLLM

classe oracleagentmemory.core.llms.Llm

Basi: ILlm

Adattatore che utilizza litellm per produrre completamenti chat.

Creare un adattatore LLM supportato da LiteLLM.

metodo generate

Genera una risposta.

metodo generate_async (asincrono)

Genera una risposta in modo asincrono utilizzando LiteLLM.

classe oracleagentmemory.core.embedders.Embedder

Basi: IEmbedder

Embedder con supporto LiteLLM

Note

Il client LiteLLM viene importato solo quando viene utilizzato per la prima volta l'incorporatore, mantenendo bassi i costi di dipendenza facoltativi per le applicazioni che non si basano su LiteLLM. I dettagli di connessione, ad esempio api_base e api_key, vengono uniti nella chiamata a litellm.embedding se fornita.

metodo embed

Incorpora un batch di testi utilizzando LiteLLM.

Esempi

Semplice incorporamento di testo singolo con un incorporatore LiteLLM configurato:

vector = embedder.embed(["ping"])
vector.shape[0]
1

metodo embed_async (asincrono)

Incorpora un batch di testi utilizzando LiteLLM.