Model Context Protocol Advanced Topics
← Alle Lektionen
Lektion 02Model Context Protocol Advanced Topics

Sampling

Zusammenfassung (Audio)

Keine Audio-Zusammenfassung für diese Lektion.

Studiennotizen

Studiennotizen: Sampling in MCP-Architekturen

Grundkonzept

  • Sampling: Eine Technik, die es einem MCP Server ermöglicht, die Textgenerierung (z. B. Zusammenfassungen) nicht selbst durchzuführen, sondern die Verantwortung an den Client delegiert.
  • Ziel: Die Komplexität und die Notwendigkeit von API-Schlüsseln auf dem MCP Server zu reduzieren, insbesondere bei öffentlich zugänglichen Servern.

Architektur und Workflow

  • Komponenten: Next. js Application (Client) → MCP Client → MCP Server → Tools (z. B. Research Tool) → Language Model (LLM, z. B. Claude).
  • Funktionsweise: Der Client sendet eine Anfrage (z. B. "Forschung zu Archäologie") an den MCP Server. Der Server entscheidet, dass ein Tool ausgeführt werden muss.

Vergleich der Optionen zur Textgenerierung

  • Option 1: Direkter Zugriff (MCP Server → LLM)
  • Der MCP Server ruft das LLM direkt auf.
  • Nachteil: Erfordert komplexe Code-Implementierung auf dem Server und einen API-Schlüssel für das LLM.
  • Option 2: Sampling (MCP Server → Client → LLM)
  • Der MCP Server sendet den Prompt an den Client.
  • Der Client führt den Prompt auf dem LLM aus und sendet das Ergebnis zurück an den Server.
  • Vorteile:
  • Verlagerung der Komplexität auf den Client.
  • Der MCP Server benötigt keinen API-Schlüssel für das LLM.
  • Ideal für öffentliche Server (Kontrolle der Token-Nutzung).

Implementierung von Sampling

  • Auf Serverseite:
  • Im Tool-Funktionscode wird die Funktion create message aufgerufen.
  • Es wird eine Liste der Nachrichten übergeben, die an den Client weitergegeben werden sollen.
  • Auf Clientseite:
  • Es muss ein spezieller sampling callback implementiert werden.
  • Dieser Callback empfängt die Nachrichten vom Server.
  • Er ruft das LLM (z. B. Claude) auf, generiert den Text und gibt ein create message result zurück an den Server.

Zusammenfassung

  • Sampling verschiebt die Last der Textgenerierung vom Server auf den Client.
  • Dies ist die empfohlene Methode für die Erstellung von öffentlich zugänglichen MCP Servern.

Takeaways

  • Sampling delegiert die Textgenerierung vom MCP Server auf den Client.
  • Ziel ist die Reduzierung der Server-Komplexität und der Notwendigkeit von LLM API-Schlüsseln, besonders für öffentliche Server.
  • Der Workflow sieht vor, dass der Server den Prompt an den Client sendet, der das LLM aufruft und das Ergebnis zurücksendet.
  • Die Implementierung erfordert auf Serverseite den Aufruf von create message und auf Clientseite einen speziellen sampling callback.
Lernkarten 8 Karten
Frage
zum Aufdecken klicken · ←/→
Antwort
zum Zurückdrehen klicken
Nach Anki exportieren (.tsv) ↓
Wissensüberprüfung 0 Fragen

No quiz for this lesson yet.