LangChain-Integration

Sie können Rememberizer als LangChain-Retriever integrieren, um Ihrer LangChain-Anwendung Zugriff auf leistungsstarke Vektordatenbanksuchen zu ermöglichen.

Dieses Notizbuch zeigt, wie man Dokumente aus Rememberizer im verwendeten Dokumentenformat abrufen kann.

Vorbereitung

Sie benötigen einen API-Schlüssel: Sie können einen erhalten, nachdem Sie ein gemeinsames Wissen unter https://rememberizer.ai erstellt haben. Sobald Sie einen API-Schlüssel haben, müssen Sie ihn als Umgebungsvariable REMEMBERIZER_API_KEY festlegen oder ihn als rememberizer_api_key beim Initialisieren von RememberizerRetriever übergeben.

RememberizerRetriever hat folgende Argumente:

- optional top_k_results: Standard=10. Verwenden Sie es, um die Anzahl der zurückgegebenen Dokumente zu begrenzen.

- optional rememberizer_api_key: erforderlich, wenn Sie die Umgebungsvariable REMEMBERIZER_API_KEY nicht festgelegt haben.

get_relevant_documents() hat ein Argument, query: Freitext, der verwendet wird, um Dokumente im gemeinsamen Wissen von Rememberizer.ai zu finden.

Beispiele

Grundlegende Verwendung

# API-Schlüssel einrichten
from getpass import getpass

REMEMBERIZER_API_KEY = getpass()
import os

from langchain_community.retrievers import RememberizerRetriever

os.environ["REMEMBERIZER_API_KEY"] = REMEMBERIZER_API_KEY
retriever = RememberizerRetriever(top_k_results=5)
docs = retriever.get_relevant_documents(query="Wie funktionieren große Sprachmodelle?")
docs[0].metadata  # Metainformationen des Dokuments
{'id': 13646493,
 'document_id': '17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP',
 'name': 'Was ist ein großes Sprachmodell (LLM)_ _ Cloudflare.pdf',
 'type': 'application/pdf',
 'path': '/langchain/Was ist ein großes Sprachmodell (LLM)_ _ Cloudflare.pdf',
 'url': 'https://drive.google.com/file/d/17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP/view',
 'size': 337089,
 'created_time': '',
 'modified_time': '',
 'indexed_on': '2024-04-04T03:36:28.886170Z',
 'integration': {'id': 347, 'integration_type': 'google_drive'}}
print(docs[0].page_content[:400])  # Inhalt des Dokuments
before, or contextualized in new ways. on some level they "understand" semantics in that they can associate words and concepts by their meaning, having seen them grouped together in that way millions or billions of times. how developers can quickly start building their own llms to build llm applications, developers need easy access to multiple data sets, and they need places for those data sets 

Nutzung in einer Kette

OPENAI_API_KEY = getpass()
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI

model = ChatOpenAI(model_name="gpt-3.5-turbo")
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
questions = [
    "Was ist RAG?",
    "Wie funktionieren große Sprachmodelle?",
]
chat_history = []

for question in questions:
    result = qa.invoke({"question": question, "chat_history": chat_history})
    chat_history.append((question, result["answer"]))
    print(f"-> **Frage**: {question} \n")
    print(f"**Antwort**: {result['answer']} \n")
-> **Frage**: Was ist RAG? 

**Antwort**: RAG steht für Retrieval-Augmented Generation. Es ist ein KI-Rahmenwerk, das Fakten aus einer externen Wissensdatenbank abruft, um die von großen Sprachmodellen (LLMs) generierten Antworten durch aktuelle und genaue Informationen zu verbessern. Dieses Rahmenwerk hilft den Benutzern, den generativen Prozess von LLMs zu verstehen und stellt sicher, dass das Modell Zugang zu zuverlässigen Informationsquellen hat. 

-> **Frage**: Wie funktionieren große Sprachmodelle? 

**Antwort**: Große Sprachmodelle (LLMs) funktionieren, indem sie massive Datensätze von Sprache analysieren, um menschliche Sprache zu verstehen und zu generieren. Sie basieren auf maschinellem Lernen, insbesondere tiefem Lernen, was bedeutet, dass ein Programm trainiert wird, um Merkmale von Daten ohne menschliches Eingreifen zu erkennen. LLMs verwenden neuronale Netzwerke, insbesondere Transformermodelle, um den Kontext in menschlicher Sprache zu verstehen, wodurch sie besser in der Lage sind, Sprache selbst in vagen oder neuen Kontexten zu interpretieren. Entwickler können schnell mit dem Aufbau eigener LLMs beginnen, indem sie auf mehrere Datensätze zugreifen und Dienste wie Cloudflares Vectorize und die Cloudflare Workers AI-Plattform nutzen.

Helfen Sie uns, indem Sie Feedback zu dieser Dokumentationsseite geben:

Last updated