Le moteur de contexte de Windsurf développe une compréhension approfondie de votre codebase, de vos actions passées et de votre prochaine intention. Historiquement, les approches de génération de code se concentraient sur l’affinage de grands modèles de langage (LLMs) sur un codebase, ce qui est difficile à faire évoluer pour répondre aux besoins de chaque utilisateur. Une approche plus récente et populaire s’appuie sur la génération augmentée par récupération (RAG), qui met l’accent sur des techniques permettant de construire des invites très pertinentes et riches en contexte afin d’obtenir des réponses précises d’un LLM. Nous avons mis en œuvre une approche RAG optimisée pour le contexte du codebase, qui produit des suggestions de meilleure qualité et moins d’hallucinations.
Windsurf propose un affinage complet pour les entreprises, et la meilleure solution combine l’affinage avec la RAG.

Contexte par défaut

Prêt à l’emploi, Windsurf prend en compte plusieurs sources de contexte pertinentes.
  • Le fichier en cours et les autres fichiers ouverts dans votre IDE, souvent très pertinents pour le code que vous êtes en train d’écrire.
  • L’ensemble de la base de code locale est ensuite indexé (y compris les fichiers non ouverts), et des extraits de code pertinents sont fournis par le moteur de récupération de Windsurf au fil de l’écriture, des questions ou de l’exécution de commandes.
  • Pour les utilisateurs Pro, nous proposons des contextes plus longs, des limites d’indexation accrues et des plafonds plus élevés pour le contexte personnalisé et les éléments de contexte épinglés.
  • Pour les utilisateurs Teams et Enterprise, Windsurf peut également indexer des référentiels distants. C’est utile pour les entreprises dont les équipes de développement travaillent sur plusieurs référentiels.

Base de connaissances (bêta)

Disponible uniquement pour les clients Teams et Enterprise. Actuellement indisponible pour les clients Hybrid.
Cette fonctionnalité permet aux équipes d’intégrer des Google Docs comme contexte ou sources de connaissances partagés pour l’ensemble de l’équipe. Actuellement, seuls les Google Docs sont pris en charge. Les images ne sont pas importées, mais les graphiques, les tableaux et le texte mis en forme sont entièrement pris en charge.

Knowledge Base

Configurez les paramètres de la base de connaissances pour votre équipe. Cette page n’est visible qu’avec des droits d’administrateur.
Les administrateurs doivent se connecter manuellement à Google Drive via OAuth, après quoi ils peuvent ajouter jusqu’à 50 Google Docs comme sources de connaissances d’équipe. Cascade aura accès aux documents spécifiés dans le tableau de bord Windsurf. Ces documents ne respectent pas les contrôles d’accès individuels des utilisateurs : si un administrateur rend un document disponible pour l’équipe, tous les utilisateurs y auront accès, quels que soient les contrôles d’accès côté Google Drive.

Bonnes pratiques

Le Context Pinning est très utile lorsque la tâche dans votre fichier actuel dépend d’informations provenant d’autres fichiers. Essayez d’épingler uniquement ce dont vous avez besoin. En épingler trop peut ralentir ou dégrader les performances du modèle d’IA. Voici quelques idées pour un épinglage de contexte efficace :
  • Définitions de modules : épingler les fichiers de définition de classes/structures présents dans votre dépôt mais appartenant à un module distinct de votre fichier actif.
  • Frameworks/bibliothèques internes : épingler des répertoires contenant des exemples de code illustrant l’utilisation de frameworks/bibliothèques.
  • Tâches spécifiques : épingler un fichier ou un dossier définissant une interface particulière (par exemple, des fichiers .proto, des classes abstraites, des modèles de configuration).
  • Zone de focalisation actuelle : épingler le répertoire au “plus petit dénominateur commun” contenant la majorité des fichiers nécessaires à votre session de codage en cours.
  • Tests : épingler un fichier précis contenant la classe pour laquelle vous écrivez des tests unitaires.

Fonctionnalités de contexte propres au Chat

Lorsque vous échangez avec Windsurf Chat, vous disposez de plusieurs façons de tirer parti du contexte de votre codebase, comme les @‑mentions ou des consignes personnalisées. Consultez la page Chat pour en savoir plus.

Foire aux questions (FAQ)

Windsurf indexe-t-il ma base de code ?

Oui, Windsurf indexe votre base de code. Il utilise également des LLM pour effectuer de la génération augmentée par récupération (RAG) sur votre base de code à l’aide de nos techniques propriétaires M-Query. Les performances et fonctionnalités d’indexation varient selon votre flux de travail et votre offre Windsurf. Pour en savoir plus, consultez notre page sur la compréhension du contexte.