Muestreo
Permite que tus servidores soliciten finalizaciones de LLMs
Cómo funciona Sampling
1.
sampling/createMessage
al cliente.2.
3.
4.
5.
Formato del mensaje
Parámetros de la solicitud
Mensajes
messages
contiene el historial de conversación para enviar al LLM. Cada mensaje tiene:role
: Ya sea "user" o "assistant"content
text
data
(base64) y mimeType
Preferencias del modelo
modelPreferences
permite a los servidores especificar sus preferencias de selección de modelo:hints
: Array de sugerencias de nombres de modelos que los clientes pueden usar para seleccionar un modelo apropiado:name
: String que puede coincidir con nombres de modelos completos o parciales (p. ej., "claude-3", "sonnet")costPriority
: Importancia de minimizar los costos.speedPriority
: Importancia de la baja latencia de respuesta.intelligencePriority
: Importancia de las capacidades avanzadas del modelo.System prompt
systemPrompt
opcional permite a los servidores solicitar un system prompt específico. El cliente puede modificarlo o ignorarlo.Inclusión de contexto
includeContext
especifica qué contexto de MCP incluir:"none"
: Ningún contexto adicional."thisServer"
: Incluir contexto del servidor solicitante."allServers"
: Incluir contexto de todos los servidores MCP conectados.Parámetros de sampling
temperature
: Controla la aleatoriedad (0.0 a 1.0).maxTokens
: Tokens máximos para generar.stopSequences
: Array de secuencias que detienen la generación.metadata
: Parámetros adicionales específicos del proveedor.Formato de respuesta
Ejemplo de solicitud
{
"method": "sampling/createMessage",
"params": {
"messages": [
{
"role": "user",
"content": {
"type": "text",
"text": "What files are in the current directory?"
}
}
],
"systemPrompt": "You are a helpful file system assistant.",
"includeContext": "thisServer",
"maxTokens": 100
}
}
Buenas prácticas
1.
2.
3.
4.
includeContext
.5.
6.
7.
8.
9.
10.