Remarque
GitHub Spark is in public preview and subject to change.
À propos de GitHub Spark
Spark est une plateforme optimisée par Copilot permettant de créer et de partager des applications (« sparks ») qui peuvent être adaptées aux besoins individuels et accessibles de manière transparente sur les ordinateurs de bureau et les appareils mobiles - sans que les utilisateurs aient besoin d'écrire ou de déployer du code.
Spark offre un environnement de développement centré sur le langage naturel pour la création d'applications et un environnement d'exécution entièrement géré qui s'adapte aux besoins de vos Sparks. Spark élimine le besoin de gérer manuellement l'infrastructure ou d'assembler plusieurs outils, vous permettant ainsi de vous concentrer sur la création.
Traitement de l’entrée
Remarque
Spark utilise actuellement Claude Sonnet 4. Ce modèle est susceptible d'être modifié.
Les requêtes d’entrée dans Spark sont prétraitées par Copilot, enrichies d'informations contextuelles provenant de vos saisies actuelles dans Spark et envoyées à un agent alimenté par un modèle linguistique volumineux au sein de votre environnement de développement. Le contexte inclus comprend des informations provenant de votre Spark, telles que le code de votre application actuelle, les invites précédentes fournies dans l'interface Spark et tous les journaux d'erreurs provenant de l'environnement de développement de votre Spark.
Le système est uniquement conçu pour générer du code à partir des invites soumises. Il n’est pas capable d’interactions conversationnelles. L’anglais est la langue préférée pour les invites envoyées.
Analyse du modèle de langage
L’invite est ensuite transmise à un grand modèle linguistique, qui est un réseau neuronal entraîné à partir d'un grand nombre de données textuelles. Le modèle de langage analyse l’invite d’entrée pour aider la raison de l’agent sur la tâche et tirer parti des outils nécessaires.
Exécution de l'agent
L’agent qui s’exécute dans votre environnement de développement accepte votre invite et le contexte supplémentaire passé, et décide comment mettre à jour votre Spark pour répondre à votre requête. L’agent peut exploiter votre environnement de développement en écrivant du code, en exécutant des commandes et en lisant les sorties d’exécution. Toutes les actions entreprises par l'agent visent à garantir un code fonctionnel et précis pour l'exécution de votre invite. La seule sortie de l’agent est votre code d’application.
Spark frameworks
L'agent Spark est formé à l'utilisation des frameworks et des SDK fournis par Spark, qui garantissent une conception moderne et des déploiements sécurisés s'intégrant de manière transparente dans le composant d'exécution de Spark. L’infrastructure de conception est conçue pour être flexible et modulaire, vous permettant ainsi de modifier facilement le thème pour qu’il corresponde à l'aspect et à la convivialité que vous souhaitez. L'intégration d'exécution de Spark, accessible via le SDK, utilise les meilleures pratiques en matière de déploiements Web afin de garantir des déploiements sécurisés et évolutifs.
Ajout de fonctionnalités d’inférence à votre Spark
Le SDK de Spark s'intègre nativement à GitHub Models, vous permettant d'intégrer l'inférence de modèle dans votre Spark. Si Spark détermine que votre application nécessite des capacités d'inférence, il les ajoutera à l'aide du SDK Spark.
Spark vous fournit les outils nécessaires pour créer, modifier et tester les invites qui seront utilisées avec ces capacités d'inférence. Spark n'effectue aucun test des invites que vous créez dans votre application. Vous devez donc vous assurer que les fonctionnalités incluses fonctionnent comme prévu. Pour plus d'informations sur l'utilisation responsable dans GitHub Models, consultez Utilisation responsable des modèles GitHub.
Traitement des données
Spark collecte des données pour faire fonctionner le service, notamment des invites, des suggestions et des extraits de code nécessaires pour assurer la continuité entre les sessions. Spark collecte également des informations supplémentaires sur l'utilisation, notamment les habitudes d'utilisation, les commentaires soumis et les données télémétriques sur les performances.
Cas d'utilisation pour Spark
Création et déploiement d’applications web de pile complète
Vous pouvez utiliser Spark pour créer des applications web de pile complète à l'aide du langage naturel. L'environnement d'exécution intégré de Spark vous permet de déployer ces applications sur l'Internet public. Vous pouvez définir les autorisations pour ces applications déployées en fonction de la visibilité du compte GitHub, ce qui permet de les rendre visibles au grand public, à des membres spécifiques de GitHub, aux membres de votre équipe ou de votre organisation, ou uniquement à vous-même. Sparks peut être aussi bien - des traqueurs de score de jeu de bord que des produits complets de type logiciel-service - toutefois tout ce que vous déployez reste soumis auxConditions de GitHub pour le contenu généré par l’utilisateur.
Prototypage d'idées
Spark aide les développeurs, les concepteurs, les chefs de produit et autres créateurs à prototyper rapidement leurs idées sans devoir créer des applications à partir de zéro ou construire des maquettes complexes. Ces prototypes peuvent être déployés pour faciliter le partage ou rester non publiés pour permettre aux constructeurs de voir instantanément leur vision.
Amélioration des performances pour Spark
Spark permet de créer une grande variété d'applications et de les faire évoluer au fil du temps afin d'augmenter leur complexité à mesure que de nouvelles exigences apparaissent. Pour améliorer les performances et pallier certaines limites de Spark, vous pouvez adopter différentes bonnes pratiques. Pour plus d'informations sur les limitations de Spark, consultez Contraintes de Spark.
Conservez vos invites spécifiques et sur la rubrique
Spark est destiné à créer et à itérer votre Spark. Plus vous serez précis quant aux comportements et interactions souhaités, meilleurs seront les résultats obtenus à partir de Spark. L'intégration d'informations contextuelles pertinentes telles que des scénarios spécifiques, des maquettes ou des spécifications aidera Spark à comprendre votre intention, ce qui améliorera les résultats que vous obtiendrez.
Spark intègre également le contexte des invites précédentes dans chaque révision ultérieure qu'il génère. L’envoi d’invites hors rubrique peut entraver les performances des révisions ultérieures. Par conséquent, essayez de conserver vos invites aussi pertinentes que possible pour l’application que vous créez.
Utiliser les modifications ciblées de manière appropriée
Les modifications ciblées dans Spark vous permettent de spécifier des éléments au sein de votre application, ce qui vous permet d'affiner le style, le contenu ou le comportement de chaque élément de votre application. Ces modifications ciblées constituent un excellent moyen de limiter la surface de modification et d'exprimer l'intention de Spark. L’utilisation de modifications ciblées lorsque cela est possible (plutôt que des invites globales) permettra d'obtenir des modifications plus précises et réduira les effets secondaires dans votre application, car Spark génère de nouvelles révisions.
Vérifier la sortie de Spark
Bien que Spark soit un outil extrêmement puissant, il peut tout de même commettre des erreurs. Ces erreurs peuvent être des malentendus sur vos objectifs, ou des erreurs de syntaxe plus simples dans votre Spark généré. Vous devez toujours utiliser l'aperçu de l'application fourni par Spark pour vérifier que votre Spark se comporte comme prévu dans différents scénarios. Si vous êtes à l’aise avec le code, il est également recommandé de s’assurer que le code généré est conforme à vos normes de qualité.
Limitations de GitHub Spark
Interprétation de l'intention de l'utilisateur
Spark n'interprète pas toujours correctement votre intention. Vous devez toujours utiliser l'aperçu fourni par Spark pour vérifier le bon fonctionnement de votre Spark.
Étendue limitée
Spark s'appuie sur Copilot et a donc été formé à partir d'un vaste corpus de code et d'applications pertinentes. Toutefois, il peut encore lutter avec des applications complexes ou inédites. Spark fonctionnera mieux dans des scénarios d'application courants/personnels (par exemple, outils de productivité, aides à l'apprentissage, utilitaires de gestion de la vie quotidienne) et lorsque les instructions en langage naturel sont fournies en anglais.
Limitations de sécurité
Bien que le temps d'exécution de Spark respecte les meilleures pratiques en matière de déploiement d'applications, il génère du code de manière probabiliste, ce qui peut potentiellement introduire des vulnérabilités, en particulier si celles-ci sont courantes dans l'ensemble d'applications utilisé pour le jeu d’apprentissage. Vous devez être prudent lors de la création d’applications qui gèrent des données personnelles ou sensibles et examinent et testent toujours l’application générée minutieusement.
Considérations relatives à la conformité et aux réglementations
Les utilisateurs doivent évaluer des obligations légales et réglementaires spécifiques potentielles lors de l’utilisation de services et de solutions IA, ce qui peut ne pas convenir à une utilisation dans chaque secteur ou scénario. En outre, les services ou solutions IA ne sont pas conçus pour et peuvent ne pas être utilisés de manière interdite en termes de service applicables et codes de conduite pertinents.
Contenu choquant
Spark dispose de protections intégrées contre les contenus nuisibles, haineux ou offensants. Veuillez signaler tout contenu offensant à copilot-safety@github.com. Veuillez inclure l'URL Spark pour nous permettre de l'identifier.
Vous pouvez signaler du contenu problématique ou illégal par le biais de commentaires, ou vous pouvez signaler un Spark comme abus ou courrier indésirable. Consultez Signalement d’abus ou de courrier indésirable et les stratégies de suppression de contenu de GitHub.