Ejecutar con el SDK de Ruby
Usa la gema oficialfetch_hive cuando quieras enviar un mensaje a un agente desde Ruby. El SDK envuelve el endpoint público POST /v1/agent/invoke, maneja la autenticación, admite streaming mediante un bloque y acepta entradas multimodales.
Instalación
Agrega a tuGemfile:
faraday por debajo y admite Ruby 3.0+.
Autenticación
Establece la variable de entornoFETCH_HIVE_API_KEY con la clave de API de tu espacio de trabajo (el cliente la lee automáticamente):
Ejemplo básico
Envía un mensaje a un agente y lee la respuesta final:Referencia del método
| Palabra clave | Tipo | Requerido | Descripción |
|---|---|---|---|
agent | String | Sí | El ID del agente |
message | String | Sí | El mensaje que quieres enviar |
thread_id | String | No | Una cadena arbitraria que identifica un hilo de conversación persistente |
messages | Array<Hash> | No | Historial de conversación administrado por el llamador. Cada elemento: { role: "user" | "assistant" | "system", content: String }. |
image_urls | Array<String> | No | URLs HTTPS de imágenes adjuntas al message actual para entradas multimodales |
user | String | No | Identificador opaco del llamador expuesto en Seguimiento de usuarios |
metadata | Hash | No | Metadatos planos definidos por el llamador para auditoría y filtrado de registros. Consulta Metadatos de invocación |
streaming: false para invoke_agent. Para hacer streaming, usa invoke_agent_stream (abajo).
Manejo de la respuesta
Streaming
Usainvoke_agent_stream para recibir Server-Sent Events a medida que llegan. El método entrega cada hash de evento analizado al bloque:
summary (cuando se dispara el resumen automático), reasoning, response, tool, un evento final usage, o un evento error si el proveedor falla a mitad del stream.
Si omites el bloque, el método devuelve un Enumerator que puedes pasar por ahí:
Conversaciones de múltiples turnos
Hilos persistentes
Pasa cualquier cadena comothread_id y Fetch Hive creará el hilo en la primera llamada y lo reanudará en llamadas posteriores con el mismo valor:
Historial sin estado
Administra el estado tú mismo pasando los turnos previos enmessages. Fetch Hive usa el historial proporcionado como contexto pero no lo persiste:
Entradas multimodales
Adjunta imágenes al mensaje actual conimage_urls:
https://.
Configuración
| Opción | Valor predeterminado | Descripción |
|---|---|---|
api_key | ENV["FETCH_HIVE_API_KEY"] | Token Bearer del panel |
base_url | https://api.fetchhive.com/v1 | Sobrescribe la URL base de la API |
timeout | 120 | Tiempo de espera de la solicitud en segundos |
Errores
Las respuestas no 2xx lanzan unRuntimeError con el código de estado y el cuerpo. Rescátalas si necesitas manejar fallas:
Enlaces
Próximos pasos
- Ejecutar con API - El mismo flujo con cURL
- Ejecutar con el SDK de Python
- Ejecutar con el SDK de Node.js
- Ejecutar con el SDK de PHP
- Invocar Agente - Referencia completa del endpoint

