TensorZero es una pila de código abierto para aplicaciones de LLM de grado industrial:
Toma lo que necesites, adopta incrementalmente y complementa con otras herramientas.
Sitio web
·
Documentación
·
Twitter
·
Slack
·
Discord
Inicio rápido (5min)
·
Guía de despliegue
·
Referencia de API
·
Referencia de configuración
¿Qué es TensorZero? | TensorZero es una pila de código abierto para aplicaciones de LLM de grado industrial. Unifica un gateway de LLM, observabilidad, optimización, evaluaciones y experimentación. |
¿En qué se diferencia TensorZero de otros frameworks de LLM? |
1. TensorZero te permite optimizar aplicaciones complejas de LLM basadas en métricas de producción y feedback humano. 2. TensorZero soporta las necesidades de aplicaciones de LLM de grado industrial: baja latencia, alto rendimiento, seguridad de tipos, autoalojamiento, GitOps, personalización, etc. 3. TensorZero unifica toda la pila de LLMOps, creando beneficios compuestos. Por ejemplo, las evaluaciones de LLM pueden usarse para fine-tuning de modelos junto con jueces de IA. |
¿Puedo usar TensorZero con ___? | Sí. Se soporta cualquier lenguaje de programación principal. Puedes usar TensorZero con nuestro cliente Python, cualquier SDK de OpenAI o cliente compatible con OpenAI, o nuestra API HTTP. |
¿Está TensorZero listo para producción? | Sí. Aquí hay un estudio de caso: Automatización de registros de cambios de código en un gran banco con LLMs |
¿Cuánto cuesta TensorZero? | Nada. TensorZero es 100% autoalojado y de código abierto. No hay características de pago. |
¿Quién está construyendo TensorZero? | Nuestro equipo técnico incluye a un antiguo mantenedor del compilador de Rust, investigadores de aprendizaje automático (Stanford, CMU, Oxford, Columbia) con miles de citas, y el director de producto de una startup decacorn. Estamos respaldados por los mismos inversores que proyectos de código abierto líderes (ej. ClickHouse, CockroachDB) y laboratorios de IA (ej. OpenAI, Anthropic). |
¿Cómo empiezo? | Puedes adoptar TensorZero incrementalmente. Nuestro Inicio rápido va desde un wrapper básico de OpenAI a una aplicación LLM lista para producción con observabilidad y fine-tuning en solo 5 minutos. |
Integra con TensorZero una vez y accede a todos los principales proveedores de LLM.
Proveedores de Modelos | Características |
El Gateway de TensorZero soporta nativamente:
¿Necesitas algo más? Es muy probable que tu proveedor sea compatible porque TensorZero se integra con cualquier API compatible con OpenAI (ej. Ollama). |
El Gateway de TensorZero soporta características avanzadas como:
El Gateway de TensorZero está escrito en Rust 🦀 con rendimiento en mente (<1ms p99 sobrecarga de latencia @ 10k QPS).
Ver Benchmarks. Puedes ejecutar inferencias usando el cliente de TensorZero (recomendado), el cliente de OpenAI, o la API HTTP. |
Puedes acceder a cualquier proveedor usando el cliente Python de TensorZero.
pip install tensorzero
from tensorzero import TensorZeroGateway # or AsyncTensorZeroGateway
with TensorZeroGateway.build_embedded(clickhouse_url="...", config_file="...") as client:
response = client.inference(
model_name="openai::gpt-4o-mini",
# Try other providers easily: "anthropic::claude-3-7-sonnet-20250219"
input={
"messages": [
{
"role": "user",
"content": "Write a haiku about artificial intelligence.",
}
]
},
)
Ver Inicio rápido para más información.
Puedes acceder a cualquier proveedor usando el cliente Python de OpenAI con TensorZero.
pip install tensorzero
from openai import OpenAI # or AsyncOpenAI
from tensorzero import patch_openai_client
client = OpenAI()
patch_openai_client(
client,
clickhouse_url="http://chuser:chpassword@localhost:8123/tensorzero",
config_file="config/tensorzero.toml",
async_setup=False,
)
response = client.chat.completions.create(
model="tensorzero::model_name::openai::gpt-4o-mini",
# Try other providers easily: "tensorzero::model_name::anthropic::claude-3-7-sonnet-20250219"
messages=[
{
"role": "user",
"content": "Write a haiku about artificial intelligence.",
}
],
)
Ver Inicio rápido para más información.
Puedes acceder a cualquier proveedor usando el cliente Node de OpenAI con TensorZero.
tensorzero/gateway
usando Docker.
Instrucciones detalladas →import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:3000/openai/v1",
});
const response = await client.chat.completions.create({
model: "tensorzero::model_name::openai::gpt-4o-mini",
// Try other providers easily: "tensorzero::model_name::anthropic::claude-3-7-sonnet-20250219"
messages: [
{
role: "user",
content: "Write a haiku about artificial intelligence.",
},
],
});
Ver Inicio rápido para más información.
TensorZero soporta prácticamente cualquier lenguaje de programación o plataforma a través de su API HTTP.
tensorzero/gateway
usando Docker.
Instrucciones detalladas →curl -X POST "http://localhost:3000/inference" \
-H "Content-Type: application/json" \
-d '{
"model_name": "openai::gpt-4o-mini",
"input": {
"messages": [
{
"role": "user",
"content": "Write a haiku about artificial intelligence."
}
]
}
}'
Ver Inicio rápido para más información.
Envía métricas de producción y feedback humano para optimizar fácilmente tus prompts, modelos y estrategias de inferencia — usando la interfaz o programáticamente.
Optimiza modelos de código cerrado y abierto usando fine-tuning supervisado (SFT) y fine-tuning por preferencias (DPO).
Fine-tuning supervisado — Interfaz | Fine-tuning por preferencias (DPO) — Jupyter Notebook |
Mejora el rendimiento actualizando dinámicamente tus prompts con ejemplos relevantes, combinando respuestas de múltiples inferencias, y más.
Muestreo Best-of-N | Muestreo Mixture-of-N |
Aprendizaje en Contexto Dinámico (DICL) | Cadena de Pensamiento (CoT) |
Próximamente más...
Optimiza tus prompts programáticamente usando técnicas de optimización basadas en investigación.
MIPROv2 | Integración con DSPy |
TensorZero incluye varias recetas de optimización, pero también puedes crear las tuyas fácilmente. Este ejemplo muestra cómo optimizar una función de TensorZero utilizando una herramienta arbitraria — en este caso, DSPy, una biblioteca popular para la ingeniería automática de prompts. |
Próximamente más...
Amplía para depurar llamadas individuales a la API, o reduce para monitorear métricas entre modelos y prompts a lo largo del tiempo — todo usando la interfaz de usuario de código abierto de TensorZero.
Observabilidad » Inferencia | Observabilidad » Función |
Compara prompts, modelos y estrategias de inferencia usando Evaluaciones de TensorZero — con soporte para heurísticas y jueces basados en LLM.
Evaluación » Interfaz | Evaluación » CLI |
|
¡Observa cómo los LLM mejoran en la extracción de datos en tiempo real con TensorZero!
Aprendizaje dinámico en contexto (DICL) es una potente optimización durante la inferencia disponible directamente en TensorZero. Mejora el rendimiento de los LLM incorporando automáticamente ejemplos históricos relevantes en el prompt, sin necesidad de ajuste fino del modelo.
https://github.com/user-attachments/assets/4df1022e-886e-48c2-8f79-6af3cdad79cb
Empieza a construir hoy mismo. La Guía Rápida muestra lo fácil que es configurar una aplicación con LLM usando TensorZero.
¿Preguntas? Pregúntanos en Slack o Discord.
¿Usas TensorZero en el trabajo? Escríbenos a [email protected] para configurar un canal de Slack o Teams con tu equipo (gratis).
Trabaja con nosotros. Estamos contratando en NYC. También agradecemos contribuciones de código abierto.
Estamos trabajando en una serie de ejemplos ejecutables completos que ilustran el ciclo de datos y aprendizaje de TensorZero.
Optimización de Extracción de Datos (NER) con TensorZero
Este ejemplo muestra cómo usar TensorZero para optimizar un pipeline de extracción de datos. Demostramos técnicas como ajuste fino y aprendizaje dinámico en contexto (DICL). Al final, un modelo optimizado GPT-4o Mini supera a GPT-4o en esta tarea — con una fracción del costo y latencia — usando una pequeña cantidad de datos de entrenamiento.
RAG Agéntico — Respuesta a Preguntas Multi-Etapas con LLMs
Este ejemplo muestra cómo construir un agente de recuperación multi-etapa usando TensorZero. El agente busca iterativamente en Wikipedia para recopilar información y decide cuándo tiene suficiente contexto para responder una pregunta compleja.
Escribiendo Haikus para Satisfacer un Juez con Preferencias Ocultas
Este ejemplo ajusta GPT-4o Mini para generar haikus adaptados a un gusto específico. Verás el "ciclo de datos en una caja" de TensorZero en acción: mejores variantes llevan a mejores datos, y mejores datos llevan a mejores variantes. Verás progreso al ajustar el LLM múltiples veces.
Mejorando la Habilidad de Ajedrez de un LLM con Muestreo Best-of-N
Este ejemplo muestra cómo el muestreo best-of-N puede mejorar significativamente las habilidades de ajedrez de un LLM seleccionando los movimientos más prometedores entre múltiples opciones generadas.
TensorZero proporciona varias recetas de optimización preconstruidas que cubren flujos de trabajo comunes de ingeniería de LLM. ¡Pero también puedes crear fácilmente tus propias recetas y flujos de trabajo! Este ejemplo muestra cómo optimizar una función de TensorZero usando una herramienta arbitraria — en este caso, DSPy.
¡Y muchos más en camino!