Introduction à OpenAI et Microsoft Sentinel
Bienvenue dans notre série sur OpenAI et Microsoft Sentinel ! Les grands modèles de langage, ou LLM, tels que la famille GPT3 d'OpenAI, envahissent l'imagination du public avec des cas d'utilisation innovants tels que le résumé de texte, les conversations de type humain, l'analyse et le débogage de code, et bien d'autres exemples. Nous avons vu ChatGPT écrire des scénarios et des poèmes, composer de la musique, rédiger des essais et même traduire du code informatique d'une langue à une autre.
Et si nous pouvions exploiter cet incroyable potentiel pour aider les intervenants dans les centres d'opérations de sécurité ? Eh bien, bien sûr que nous pouvons – et c’est facile ! Microsoft Sentinel inclut déjà un connecteur intégré pour les modèles OpenAI GPT3 que nous pouvons implémenter dans nos playbooks d'automatisation optimisés par Azure Logic Apps. Ces flux de travail puissants sont faciles à écrire et à intégrer dans les opérations SOC. Aujourd'hui, nous allons examiner le connecteur OpenAI et explorer certains de ses paramètres configurables à l'aide d'un cas d'utilisation simple : décrire une politique MITRE ATT&CK liée aux événements Sentinel.
Avant de commencer, abordons quelques prérequis :
- Si vous n'avez pas encore d'instance Microsoft Sentinel, vous pouvez en créer une à l'aide de votre compte Azure gratuit et suivre le guide de démarrage rapide Mise en route avec Sentinel.
- Nous utiliserons les données préenregistrées du Microsoft Sentinel Training Lab pour tester notre playbook.
- Vous aurez également besoin d'un compte OpenAI personnel avec une clé API pour la connexion GPT3.
- Je recommande également fortement de consulter l'excellent blog d'Antonio Formato sur la gestion des événements avec ChatGPT et Sentinel, où Antonio présente un manuel polyvalent très utile qui est devenu la référence pour presque toutes les implémentations de modèles OpenAI dans Sentinel à ce jour.
Nous commencerons par un playbook de base de déclenchement d'incident (Sentinel > Automatisation > Créer > Playbook avec déclencheur d'incident).
Sélectionnez votre abonnement et votre groupe de ressources, ajoutez un nom de script et accédez à l'onglet Connexions. Vous devriez voir Microsoft Sentinel avec une ou deux options d'authentification - j'utilise Managed Identity dans cet exemple - mais si vous n'avez pas encore de connexion, vous pouvez également ajouter une connexion Sentinel dans Logic Apps Designer .
Affichez et créez le playbook, après quelques secondes, la ressource sera déployée avec succès et nous amènera au canevas Logic App Designer :
Ajoutons notre connecteur OpenAI. Cliquez sur Nouvelle étape et tapez « OpenAI » dans la zone de recherche. Vous verrez le connecteur dans le volet supérieur et deux actions en dessous : "Créer une image" et "GPT3 Complétez votre astuce" :
Sélectionnez "GPT3 Complétez votre astuce". Il vous sera ensuite demandé de créer une connexion à l'API OpenAI dans la boîte de dialogue suivante. Si vous ne l'avez pas déjà fait, créez une clé sur https://platform.openai.com/account/api-keys et assurez-vous de la conserver dans un endroit sûr !
Assurez-vous de suivre exactement les instructions lors de l'ajout de la clé API OpenAI - cela nécessite le mot "Bearer", suivi d'un espace, puis de la clé elle-même :
Succès ! Nous avons maintenant la complétion du texte GPT3 prête pour notre invite. Nous voulons que le modèle d'IA interprète les stratégies et techniques de MITRE ATT&CK liées aux événements Sentinel, écrivons donc une invite simple utilisant du contenu dynamique pour insérer les stratégies d'événements de Sentinel.
Nous avons presque terminé ! Enregistrez votre application logique et accédez à Microsoft Sentinel Events pour tester son exécution. J'ai des données de test de Microsoft Sentinel Training Lab dans mon instance, je vais donc exécuter ce playbook sur des événements déclenchés par des alertes de règles de boîte de réception malveillantes.
Vous vous demandez peut-être pourquoi nous n'avons pas configuré une deuxième action dans notre playbook pour ajouter un commentaire ou une tâche avec un résultat. Nous y arriverons - mais nous voulons d'abord nous assurer que nos invites renvoient un bon contenu du modèle d'IA. Revenez au Playbook et ouvrez la présentation dans un nouvel onglet. Vous devriez voir un élément dans votre historique de courses, avec un peu de chance avec une coche verte :
Cliquez sur l'élément pour voir les détails de l'application logique en cours d'exécution. Nous pouvons étendre n'importe quel bloc d'opération pour afficher les paramètres d'entrée et de sortie détaillés :
Notre opération GPT3 s'est terminée avec succès en seulement deux secondes. Cliquons sur le bloc d'action pour le développer et voir tous les détails de ses entrées et sorties :
Examinons de plus près le champ Sélectionner dans la section Sorties. C'est ici que GPT3 renvoie le texte de son achèvement ainsi que l'état d'achèvement et les éventuels codes d'erreur. J'ai copié le texte intégral de la sortie Choices dans Visual Studio Code :
Ça a l'air bien jusqu'à présent ! GPT3 élargit correctement la définition MITRE de « l’évasion de la défense ». Avant d'ajouter une action logique au playbook pour créer un commentaire d'événement avec ce texte de réponse, examinons à nouveau les paramètres de l'action GPT3 elle-même. Il y a un total de neuf paramètres dans l'action de complétion de texte OpenAI, sans compter la sélection du moteur et les astuces :
Que signifient-ils et comment les ajuster pour obtenir les meilleurs résultats ? Pour nous aider à comprendre l'impact de chaque paramètre sur les résultats, allons sur OpenAI API Playground. Nous pouvons coller l'invite exacte dans le champ de saisie où l'application logique s'exécutera, mais avant de cliquer sur Soumettre, nous voulons nous assurer que les paramètres correspondent. Voici un tableau rapide comparant les noms des paramètres entre Azure Logic App OpenAI Connector et OpenAI Playground :
Azure Logic App Connector | OpenAI Playground | Explication |
Engine | Model | générera le modèle terminé. On peut sélectionner Leonardo da Vinci (nouveau), Leonardo da Vinci (ancien), Curie, Babbage ou Ada dans le connecteur OpenAI, correspondant respectivement à 'text-davinci-003', 'text-davinci-002', 'text -curie -001' , 'text-babbage-001' et 'text-ada-001' dans Playground. |
n | NA | Combien de complétions sont générées pour chaque invite. Cela équivaut à ressaisir l'invite plusieurs fois dans le Playground. |
Meilleur | (idem) | Générez plusieurs complétions et renvoyez la meilleure. À utiliser avec prudence – cela coûte beaucoup de jetons ! |
La température | (idem) | définit le caractère aléatoire (ou la créativité) de la réponse. Défini sur 0 pour une exécution rapide et répétée hautement déterministe où le modèle renverra toujours son choix le plus sûr. Réglez-le sur 1 pour un maximum de réponses créatives avec plus de caractère aléatoire, ou quelque part entre les deux si vous le souhaitez. |
Max Tokens | Longueur Max | Longueur maximale de la réponse ChatGPT, donnée en jetons. Un jeton est approximativement égal à quatre caractères. ChatGPT utilise la tarification des jetons ; au moment de la rédaction, 1 000 jetons coûtent 0,002 $. Le coût d'un appel d'API inclura la longueur du jeton suggérée ainsi que la réponse. Par conséquent, si vous souhaitez conserver le coût par réponse le plus bas, soustrayez la longueur du jeton suggérée de 1 000 pour limiter la réponse. |
Pénalité de fréquence | (Idem) | Nombre allant de 0 à 2. Plus la valeur est élevée, moins le modèle est susceptible de répéter la ligne textuellement (il essaiera de trouver des synonymes ou des reformulations de la ligne). |
Il y a une pénalité | (idem) | Un chiffre entre 0 et 2. Plus la valeur est élevée, moins le modèle est susceptible de répéter les sujets déjà mentionnés dans la réponse. |
TOP | (idem) | Une autre façon de mettre en place la réponse "créativité" si vous n'utilisez pas la température. Ce paramètre limite les jetons de réponse possibles en fonction de la probabilité ; lorsqu'il est défini sur 1, tous les jetons sont pris en compte, mais des valeurs plus petites réduisent l'ensemble des réponses possibles aux X % supérieurs. |
Utilisateur | N/A | identifiant unique. Nous n'avons pas besoin de définir ce paramètre car notre clé API est déjà utilisée comme chaîne d'identification. |
Stop | Séquence d'arrêt | Jusqu'à quatre séquences mettront fin à la réponse du modèle. |
Utilisons les paramètres OpenAI API Playground suivants pour correspondre aux opérations de notre application logique :
- Modèle : text-davinci-003
- Température : 1
- Longueur maximale : 100
C'est ce que nous obtenons du résultat du moteur GPT3 .
Il semble que la réponse soit tronquée au milieu de la phrase, nous devrions donc augmenter le paramètre de longueur maximale. Sinon, cette réponse semble plutôt bonne. Nous utilisons la valeur de température la plus élevée possible. Que se passe-t-il si nous abaissons la température pour obtenir une réponse plus certaine ? Prenons par exemple une température de zéro :
À température=0, peu importe le nombre de fois que nous régénérons cette invite, nous obtenons presque exactement le même résultat. Cela fonctionne bien lorsque nous demandons à GPT3 de définir des termes techniques ; il ne devrait pas y avoir beaucoup de différence dans ce que signifie « évasion défensive » en tant que tactique MITRE ATT&CK. Nous pouvons améliorer la lisibilité des réponses en ajoutant une pénalité de fréquence pour réduire la tendance du modèle à réutiliser les mêmes mots (« technique like »). Augmentons la pénalité de fréquence jusqu'à un maximum de 2 :
Jusqu'à présent, nous n'avons utilisé que les derniers modèles Da Vinci pour faire avancer les choses rapidement. Que se passe-t-il si nous passons à l’un des modèles OpenAI les plus rapides et les moins chers, comme Curie, Babbage ou Ada ? Changeons le modèle en « text-ada-001 » et comparons les résultats :
Eh bien… pas tout à fait. Essayons Babbage :
Babbage ne semble pas non plus renvoyer les résultats que nous recherchons. Peut-être que Curie serait mieux lotie ?
Malheureusement, Curie ne répondait pas non plus aux normes fixées par Léonard de Vinci. Ils sont certainement rapides, mais notre cas d'utilisation consistant à ajouter du contexte aux événements de sécurité ne repose pas sur des temps de réponse inférieurs à la seconde : la précision du résumé est plus importante. Nous continuons à utiliser la combinaison réussie des modèles Da Vinci, des punitions à basse température et à haute fréquence.
De retour à notre Logic App, transférons les paramètres que nous avons découverts du Playground vers le OpenAI Action Block :
Notre Logic App devra également pouvoir écrire des commentaires pour nos événements. Cliquez sur "Nouvelle étape" et sélectionnez "Ajouter un commentaire à l'événement" depuis le connecteur Microsoft Sentinel :
Il nous suffit de préciser l'identifiant ARM de l'événement et de rédiger notre message de commentaire. Tout d'abord, recherchez "Event ARM ID" dans le menu contextuel du contenu dynamique :
Ensuite, recherchez le "Texte" que nous avons généré à l'étape précédente. Vous devrez peut-être cliquer sur Voir plus pour voir le résultat. Le Logic App Designer enveloppe automatiquement notre action de commentaire dans un bloc logique « Pour chaque » pour gérer les cas où plusieurs complétions sont générées pour la même invite.
Notre application logique terminée devrait ressembler à ceci :
Testons-la à nouveau ! Revenez à cet événement Microsoft Sentinel et exécutez le playbook. Nous devrions obtenir une autre réussite dans l’historique d’exécution de notre application logique et un nouveau commentaire dans notre journal d’activité des événements.
Si vous êtes restés en contact avec nous jusqu'à présent, vous pouvez désormais intégrer OpenAI GPT3 à Microsoft Sentinel, ce qui peut ajouter de la valeur à vos enquêtes de sécurité. Restez à l'écoute pour notre prochain article, où nous discuterons d'autres façons d'intégrer les modèles OpenAI avec Sentinel, débloquant ainsi des flux de travail qui peuvent vous aider à tirer le meilleur parti de votre plateforme de sécurité !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

En 2023, la technologie de l’IA est devenue un sujet brûlant et a un impact énorme sur diverses industries, notamment dans le domaine de la programmation. Les gens sont de plus en plus conscients de l’importance de la technologie de l’IA, et la communauté Spring ne fait pas exception. Avec l’évolution continue de la technologie GenAI (Intelligence Artificielle Générale), il est devenu crucial et urgent de simplifier la création d’applications dotées de fonctions d’IA. Dans ce contexte, « SpringAI » a émergé, visant à simplifier le processus de développement d'applications fonctionnelles d'IA, en le rendant simple et intuitif et en évitant une complexité inutile. Grâce à « SpringAI », les développeurs peuvent plus facilement créer des applications dotées de fonctions d'IA, ce qui les rend plus faciles à utiliser et à exploiter.

OpenAI a récemment annoncé le lancement de son modèle d'intégration de dernière génération, embeddingv3, qui, selon eux, est le modèle d'intégration le plus performant avec des performances multilingues plus élevées. Ce lot de modèles est divisé en deux types : les plus petits text-embeddings-3-small et les plus puissants et plus grands text-embeddings-3-large. Peu d'informations sont divulguées sur la façon dont ces modèles sont conçus et formés, et les modèles ne sont accessibles que via des API payantes. Il existe donc de nombreux modèles d'intégration open source. Mais comment ces modèles open source se comparent-ils au modèle open source open source ? Cet article comparera empiriquement les performances de ces nouveaux modèles avec des modèles open source. Nous prévoyons de créer une donnée

Si la réponse donnée par le modèle d’IA est incompréhensible du tout, oseriez-vous l’utiliser ? À mesure que les systèmes d’apprentissage automatique sont utilisés dans des domaines de plus en plus importants, il devient de plus en plus important de démontrer pourquoi nous pouvons faire confiance à leurs résultats, et quand ne pas leur faire confiance. Une façon possible de gagner confiance dans le résultat d'un système complexe est d'exiger que le système produise une interprétation de son résultat qui soit lisible par un humain ou un autre système de confiance, c'est-à-dire entièrement compréhensible au point que toute erreur possible puisse être trouvé. Par exemple, pour renforcer la confiance dans le système judiciaire, nous exigeons que les tribunaux fournissent des avis écrits clairs et lisibles qui expliquent et soutiennent leurs décisions. Pour les grands modèles de langage, nous pouvons également adopter une approche similaire. Cependant, lorsque vous adoptez cette approche, assurez-vous que le modèle de langage génère

Auteur丨Compilé par TimAnderson丨Produit par Noah|51CTO Technology Stack (WeChat ID : blog51cto) Le projet d'éditeur Zed est encore en phase de pré-version et a été open source sous licences AGPL, GPL et Apache. L'éditeur offre des performances élevées et plusieurs options assistées par l'IA, mais n'est actuellement disponible que sur la plate-forme Mac. Nathan Sobo a expliqué dans un article que dans la base de code du projet Zed sur GitHub, la partie éditeur est sous licence GPL, les composants côté serveur sont sous licence AGPL et la partie GPUI (GPU Accelerated User) l'interface) adopte la Licence Apache2.0. GPUI est un produit développé par l'équipe Zed

Il n'y a pas si longtemps, OpenAISora est rapidement devenu populaire grâce à ses étonnants effets de génération vidéo. Il s'est démarqué parmi la foule de modèles vidéo littéraires et est devenu le centre d'attention mondiale. Suite au lancement du processus de reproduction d'inférence de formation Sora avec une réduction des coûts de 46 % il y a 2 semaines, l'équipe Colossal-AI a entièrement open source le premier modèle de génération vidéo d'architecture de type Sora au monde "Open-Sora1.0", couvrant l'ensemble processus de formation, y compris le traitement des données, tous les détails de la formation et les poids des modèles, et joignez-vous aux passionnés mondiaux de l'IA pour promouvoir une nouvelle ère de création vidéo. Pour un aperçu, jetons un œil à une vidéo d'une ville animée générée par le modèle « Open-Sora1.0 » publié par l'équipe Colossal-AI. Ouvrir-Sora1.0

Il a été révélé que Microsoft et OpenAI investissaient de grosses sommes d’argent dans une start-up de robots humanoïdes au début de l’année. Parmi eux, Microsoft prévoit d'investir 95 millions de dollars et OpenAI investira 5 millions de dollars. Selon Bloomberg, la société devrait lever un total de 500 millions de dollars au cours de ce cycle, et sa valorisation pré-monétaire pourrait atteindre 1,9 milliard de dollars. Qu'est-ce qui les attire ? Jetons d’abord un coup d’œil aux réalisations de cette entreprise en matière de robotique. Ce robot est tout argenté et noir, et son apparence ressemble à l'image d'un robot dans un blockbuster de science-fiction hollywoodien : maintenant, il met une capsule de café dans la machine à café : si elle n'est pas placée correctement, elle s'ajustera sans aucun problème. télécommande humaine : Cependant, après un certain temps, une tasse de café peut être emportée et dégustée : Avez-vous des membres de votre famille qui l'ont reconnu ? Oui, ce robot a été créé il y a quelque temps.

Ollama est un outil super pratique qui vous permet d'exécuter facilement des modèles open source tels que Llama2, Mistral et Gemma localement. Dans cet article, je vais vous présenter comment utiliser Ollama pour vectoriser du texte. Si vous n'avez pas installé Ollama localement, vous pouvez lire cet article. Dans cet article, nous utiliserons le modèle nomic-embed-text[2]. Il s'agit d'un encodeur de texte qui surpasse OpenAI text-embedding-ada-002 et text-embedding-3-small sur les tâches à contexte court et à contexte long. Démarrez le service nomic-embed-text lorsque vous avez installé avec succès o

Soudain! OpenAI a licencié des gens, la raison : une fuite d'informations suspectée. L’un d’eux est Léopold Aschenbrenner, un allié du scientifique en chef disparu Ilya et un membre principal de l’équipe Superalignment. L'autre personne n'est pas simple non plus : il s'agit de Pavel Izmailov, chercheur au sein de l'équipe d'inférence du LLM, qui a également travaillé dans l'équipe de super alignement. On ne sait pas exactement quelles informations les deux hommes ont divulguées. Après que la nouvelle ait été révélée, de nombreux internautes se sont dits « assez choqués » : j'ai vu le message d'Aschenbrenner il n'y a pas longtemps et j'ai senti qu'il était en pleine ascension dans sa carrière. Certains internautes sur la photo pensent : OpenAI a perdu Aschenbrenner, je