TensorZero est une pile open-source pour des applications LLM de qualité industrielle :
Prenez ce dont vous avez besoin, adoptez progressivement et complétez avec d'autres outils.
Site Web
·
Documentation
·
Twitter
·
Slack
·
Discord
Démarrage rapide (5min)
·
Guide de déploiement
·
Référence API
·
Référence de configuration
Qu'est-ce que TensorZero ? | TensorZero est une pile open-source pour des applications LLM de qualité industrielle. Elle unifie une passerelle LLM, l'observabilité, l'optimisation, les évaluations et l'expérimentation. |
En quoi TensorZero diffère-t-il des autres frameworks LLM ? |
1. TensorZero permet d'optimiser des applications LLM complexes basées sur des métriques de production et des feedbacks humains. 2. TensorZero répond aux besoins des applications LLM industrielles : faible latence, haut débit, sécurité des types, auto-hébergement, GitOps, personnalisation, etc. 3. TensorZero unifie toute la stack LLMOps, créant des bénéfices cumulatifs. Par exemple, les évaluations LLM peuvent être utilisées pour le fine-tuning de modèles conjointement avec des juges IA. |
Puis-je utiliser TensorZero avec ___ ? | Oui. Tous les principaux langages de programmation sont supportés. Vous pouvez utiliser TensorZero avec notre client Python, n'importe quel SDK OpenAI ou client compatible OpenAI, ou notre API HTTP. |
TensorZero est-il prêt pour la production ? | Oui. Voici une étude de cas : Automatisation des changelogs de code dans une grande banque avec des LLMs |
Combien coûte TensorZero ? | Rien. TensorZero est 100% auto-hébergé et open-source. Il n'y a pas de fonctionnalités payantes. |
Qui développe TensorZero ? | Notre équipe technique comprend un ancien mainteneur du compilateur Rust, des chercheurs en machine learning (Stanford, CMU, Oxford, Columbia) avec des milliers de citations, et le directeur produit d'une startup decacorn. Nous sommes soutenus par les mêmes investisseurs que des projets open-source leaders (ex. ClickHouse, CockroachDB) et labos IA (ex. OpenAI, Anthropic). |
Comment commencer ? | Vous pouvez adopter TensorZero progressivement. Notre Démarrage rapide vous guide d'un wrapper OpenAI basique à une application LLM prête pour la production avec observabilité et fine-tuning en seulement 5 minutes. |
Intégrez TensorZero une fois et accédez à tous les principaux fournisseurs de LLM.
Fournisseurs de modèles | Fonctionnalités |
La passerelle TensorZero supporte nativement :
Besoin d'autre chose ? Votre fournisseur est probablement supporté car TensorZero s'intègre avec toute API compatible OpenAI (ex. Ollama). |
La passerelle TensorZero supporte des fonctionnalités avancées comme :
La passerelle TensorZero est écrite en Rust 🦀 avec une attention particulière aux performances (surcharge de latence p99 <1ms @ 10k QPS).
Voir Benchmarks. Vous pouvez exécuter des inférences en utilisant le client TensorZero (recommandé), le client OpenAI, ou l'API HTTP. |
Vous pouvez accéder à n'importe quel fournisseur en utilisant le client Python 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.",
}
]
},
)
Voir Démarrage rapide pour plus d'informations.
Vous pouvez accéder à n'importe quel fournisseur en utilisant le client Python OpenAI avec 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.",
}
],
)
Voir Démarrage rapide pour plus d'informations.
Vous pouvez accéder à n'importe quel fournisseur en utilisant le client Node OpenAI avec TensorZero.
tensorzero/gateway
via Docker.
Instructions détaillées →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.",
},
],
});
Voir Démarrage rapide pour plus d'informations.
TensorZero supporte virtuellement n'importe quel langage ou plateforme via son API HTTP.
tensorzero/gateway
via Docker.
Instructions détaillées →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."
}
]
}
}'
Voir Démarrage rapide pour plus d'informations.
Envoyez des métriques de production et des feedbacks humains pour optimiser facilement vos prompts, modèles et stratégies d'inférence — via l'interface ou programmatiquement.
Optimisez des modèles open-source et propriétaires via fine-tuning supervisé (SFT) et fine-tuning par préférences (DPO).
Fine-tuning supervisé — UI | Fine-tuning par préférences (DPO) — Jupyter Notebook |
Améliorez les performances en mettant à jour dynamiquement vos prompts avec des exemples pertinents, combinant des réponses de multiples inférences, etc.
Échantillonnage Best-of-N | Échantillonnage Mixture-of-N |
Apprentissage contextuel dynamique (DICL) | Chaîne de pensée (CoT) |
Plus à venir...
Optimisez vos prompts programmatiquement avec des techniques de recherche avancées.
MIPROv2 | Intégration DSPy |
TensorZero propose plusieurs recettes d'optimisation prédéfinies, mais vous pouvez aussi facilement créer les vôtres. Cet exemple montre comment optimiser une fonction TensorZero à l'aide d'un outil arbitraire — ici, DSPy, une bibliothèque populaire pour l'ingénierie automatique de prompts. |
Plus à venir bientôt...
Zoomez pour déboguer des appels API individuels, ou dézoomez pour surveiller des métriques sur les modèles et prompts au fil du temps — le tout via l'interface open-source de TensorZero.
Observabilité » Inférence | Observabilité » Fonction |
Comparez des prompts, modèles et stratégies d'inférence avec les Évaluations TensorZero — avec support pour heuristiques et juges LLM.
Évaluation » UI | Évaluation » CLI |
|
Observez les LLM s'améliorer en extraction de données en temps réel avec TensorZero !
L'apprentissage dynamique en contexte (DICL) est une puissante optimisation d'inférence disponible nativement dans TensorZero. Elle améliore les performances des LLM en incorporant automatiquement des exemples historiques pertinents dans le prompt, sans nécessiter de fine-tuning du modèle.
https://github.com/user-attachments/assets/4df1022e-886e-48c2-8f79-6af3cdad79cb
Commencez à développer dès aujourd'hui. Le Guide de démarrage rapide montre qu'il est facile de configurer une application LLM avec TensorZero.
Des questions ? Contactez-nous sur Slack ou Discord.
Utilisez TensorZero au travail ? Envoyez-nous un email à [email protected] pour configurer un canal Slack ou Teams avec votre équipe (gratuit).
Travailler avec nous. Nous recrutons à New York. Nous accueillons aussi les contributions open-source !
Nous préparons une série d'exemples complets exécutables illustrant la boucle de rétroaction données & apprentissage de TensorZero.
Optimisation d'extraction de données (NER) avec TensorZero
Cet exemple montre comment utiliser TensorZero pour optimiser un pipeline d'extraction de données. Nous démontrons des techniques comme le fine-tuning et l'apprentissage dynamique en contexte (DICL). Au final, un modèle optimisé GPT-4o Mini surpasse GPT-4o sur cette tâche — pour une fraction du coût et de la latence — en utilisant peu de données d'entraînement.
RAG agentique — Questions-réponses multi-sauts avec LLMs
Cet exemple montre comment construire un agent de recherche multi-sauts avec TensorZero. L'agent parcourt itérativement Wikipédia pour collecter des informations, et décide quand il a assez de contexte pour répondre à une question complexe.
Écrire des haïkus satisfaisant un juge aux préférences cachées
Cet exemple effectue un fine-tuning de GPT-4o Mini pour générer des haïkus adaptés à un goût spécifique. Vous verrez la "boucle de rétroaction données en boîte" de TensorZero en action : de meilleures variantes produisent de meilleures données, qui produisent à leur tour de meilleures variantes. Vous observerez les progrès en fine-tunant le LLM à plusieurs reprises.
Améliorer les capacités d'échecs d'un LLM avec l'échantillonnage Best-of-N
Cet exemple montre comment l'échantillonnage Best-of-N peut significativement améliorer les capacités d'un LLM aux échecs en sélectionnant les coups les plus prometteurs parmi plusieurs options générées.
TensorZero fournit plusieurs recettes d'optimisation prédéfinies couvrant des workflows courants d'ingénierie LLM. Mais vous pouvez aussi facilement créer vos propres recettes et workflows ! Cet exemple montre comment optimiser une fonction TensorZero avec un outil arbitraire — ici, DSPy.
Et bien d'autres à venir !