input_file et attachment_search dans l'API Responses
Deux manieres de referencer un fichier
L’API Responses de Grok offre deux methodes pour injecter un fichier dans une conversation : par file_id (fichier deja uploade) ou par file_url (URL publique). Dans les deux cas, Grok active automatiquement l’outil attachment_search pour extraire le contenu pertinent.
Par file_id : fichier uploade
Quand vous avez uploade un fichier via POST /v1/files, vous utilisez son identifiant :
{
"model": "grok-3",
"input": [
{
"type": "input_file",
"file_id": "file_abc123"
},
{
"type": "input_text",
"text": "Quels sont les principaux risques mentionnes dans ce rapport ?"
}
]
}
Cette methode est ideale quand :
- Vous interrogez le meme fichier plusieurs fois (un seul upload, plusieurs requetes)
- Le fichier est confidentiel et ne doit pas etre expose via une URL publique
- Vous gerez un workflow ou les fichiers sont pre-uploades
Par file_url : URL publique
Si votre document est accessible via une URL publique, vous pouvez le referencer directement sans upload prealable :
{
"model": "grok-3",
"input": [
{
"type": "input_file",
"file_url": "https://exemple.com/specifications-api.pdf"
},
{
"type": "input_text",
"text": "Resume les endpoints decrits dans cette documentation."
}
]
}
Cette methode est pratique pour :
- Des documents publics que vous ne souhaitez pas stocker
- Des fichiers heberges sur votre infrastructure avec URL temporaire
- Des tests rapides sans passer par l’etape d’upload
Limites du file_url
- L’URL doit etre accessible publiquement (pas d’authentification)
- Le telechargement compte dans le temps de traitement de la requete
- Chaque requete retelecharge le fichier — pas de cache cote xAI
Le mecanisme attachment_search
Quand un input_file est present dans votre requete, Grok active automatiquement l’outil attachment_search. Ce mecanisme :
- Extrait le contenu du fichier (texte, tableaux, structure)
- Indexe temporairement le contenu pour la duree de la requete
- Recherche les passages pertinents en fonction de votre question
- Injecte les extraits dans le contexte du modele
Vous n’avez rien a configurer : attachment_search est active par defaut des qu’un fichier est reference. Le modele cite les passages utilises dans sa reponse.
Combiner plusieurs fichiers
Vous pouvez referencer plusieurs fichiers dans une meme requete :
{
"model": "grok-3",
"input": [
{
"type": "input_file",
"file_id": "file_rapport_q1"
},
{
"type": "input_file",
"file_id": "file_rapport_q2"
},
{
"type": "input_text",
"text": "Compare les resultats du Q1 et du Q2."
}
]
}
Le modele analysera les deux fichiers et pourra croiser les informations pour repondre a votre question.
file_id vs file_url : que choisir ?
| Critere | file_id | file_url |
|---|---|---|
| Upload prealable | Oui | Non |
| Fichier confidentiel | Recommande | Deconseille |
| Requetes repetees | Performant (1 upload) | Lent (re-telechargement) |
| Fichier public | Possible | Ideal |
| Gestion du cycle de vie | Vous controlez | Depend de l’hebergeur |
Points cles a retenir
input_fileavecfile_idreference un fichier uploade,file_urlun document public- L’outil
attachment_searchs’active automatiquement pour extraire le contenu pertinent - Vous pouvez combiner plusieurs fichiers dans une meme requete
- Privilegiez
file_idpour les fichiers confidentiels ou interroges frequemment - Privilegiez
file_urlpour les documents publics ou les tests rapides