auto (défaut recommandé par Exa), neural, fast, deep-lite, deep, deep-reasoning et instant — plus la récupération de contenu structuré (highlights, texte, résumés) et le filtrage riche (catégories, inclusion/exclusion de domaines, plages de dates et fenêtres d’âge maximum). Des paramètres par défaut sensés sont fournis prêts à l’emploi, afin que les développeurs en aval bénéficient des meilleures pratiques Exa sans réglage manuel.
Pourquoi Exa dans FIM One
- Recherche neuronale pour le raisonnement des agents — La recherche native par embedding d’Exa retourne des résultats sémantiquement pertinents, pas seulement des correspondances de mots-clés. C’est important pour les agents de recherche qui raisonnent sur le contenu web.
- Mode de raisonnement profond pour les requêtes difficiles — raisonnement multi-sauts en un seul appel sur le web ouvert, sans que l’agent orchestre lui-même les sous-requêtes.
- Extraction de contenu intégrée — les surlignages + texte + résumés optionnels arrivent avec l’appel de recherche, éliminant un deuxième aller-retour pour récupérer et nettoyer le contenu de la page.
- Contrôles stricts du domaine / de la récence — listes d’inclusions/exclusions de domaines (jusqu’à 1200 entrées), fenêtres de dates ISO-8601, et
maxAgeHourspour les flux de travail sensibles au temps.
Démarrage rapide
1. Obtenir une clé API Exa
Inscrivez-vous sur exa.ai et récupérez votre clé API depuis le tableau de bord.2. Définir la clé dans FIM One
Ajoutez à votre.env :
WEB_SEARCH_PROVIDER n’est pas défini, FIM One sélectionne automatiquement Exa lorsque EXA_API_KEY est présent.
Pour rendre Exa explicite :
3. Utilisez-le à partir de n’importe quel agent
La recherche web est exposée aux agents en tant qu’outil intégré — aucun câblage supplémentaire nécessaire. Les agents avecweb_search activé achemineront automatiquement via Exa.
Configuration
Tous les paramètres spécifiques à Exa ont des valeurs par défaut sensées. Remplacez l’un d’entre eux via des variables d’environnement :Comment les extraits sont assemblés
FIM One parcourt les champs de contenu d’Exa pour produire un extrait utile sur chaque résultat, quel que soit les types de contenu que l’API a remplis :highlights(joints avec…) — préféré quand présenttext— revient au texte d’article extrait, tronqué àEXA_TEXT_MAX_CHARSsummary— utilisé quand les deux précédents sont vides
Préréglage : surveillance des actualités
Préréglage : récupération d’articles de recherche
Preset: agent de raisonnement profond
Attribution
Chaque requête Exa de FIM One porte un en-têtex-exa-integration: fim-one pour qu’Exa puisse attribuer l’utilisation de l’API à cette intégration dans les tableaux de bord des mainteneurs. Ceci est utilisé uniquement pour l’attribution au niveau de l’intégration — aucune identification ou suivi des utilisateurs finaux.
Le connecteur Exa se trouve à src/fim_one/core/web/search/exa.py et suit le même protocole BaseWebSearch que Jina, Tavily et Brave — changer de fournisseur ne nécessite qu’une modification d’une variable d’environnement.