auto (type de recherche 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 avancé (catégories, inclusion/exclusion de domaines, plages de dates et fenêtres d’âge maximum). Les paramètres par défaut sensés côté Exa sont fournis d’emblée, vous bénéficiez donc 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 crucial pour les agents de recherche qui raisonnent sur le contenu web.
- Mode de raisonnement profond pour les requêtes complexes — raisonnement multi-hop en un seul appel sur le web ouvert, sans que l’agent n’ait besoin d’orchestrer des 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 et de la récence — listes d’inclusion/exclusion de domaines (jusqu’à 1200 entrées), fenêtres de date ISO-8601, et
maxAgeHourspour les workflows 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. Activer Exa dans FIM One
Ajoutez à votre.env :
web_search soit acheminé via Exa. Préférez un WEB_SEARCH_PROVIDER=exa explicite plutôt que de vous fier uniquement à la détection automatique des clés.
3. L’utiliser depuis 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. Avec Exa configuré comme ci-dessus, les agents qui ontweb_search activé acheminent les appels de recherche via Exa.
Configuration
All Exa-specific knobs have sensible defaults. Override any of them via environment variables:Comment les extraits sont assemblés
FIM One parcourt en cascade 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
Preset: news monitoring
Preset: research paper retrieval
Présélection : agent de raisonnement profond
Attribution
Chaque requête Exa provenant de FIM One inclut 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 de variable d’environnement.