L'IA générative et les grands modèles de langage (LLM) suscitent beaucoup d'enthousiasme. Ils ont suscité l'imagination du grand public en raison de leur utilité lorsqu'ils sont invités à aider à la rédaction de texte. Mais pour les développeurs, ils sont encore plus révolutionnaires, car ils ont considérablement simplifié la façon dont les applications d'IA peuvent être créées. Voyons pourquoi.
Traditionnellement, la façon dont vous créez une application d'IA est un processus en quatre étapes :
L'étape 3 est généralement simple (bien que
Sans surprise, lorsqu'un domaine problématique nécessite une équipe de docteurs pour le résoudre avec succès, il sera prohibitif en termes de coût et de compétences pour toutes les entreprises, sauf quelques-unes.
L'une des raisons pour lesquelles tout le monde est si enthousiasmé par l'IA générative avec les LLM est que vous pouvez souvent résoudre un problème "assez bien" sans aucune des étapes ci-dessus. Avec l'IA générative, votre travail consiste à :
C'est ça, vraiment. Tout le reste n'est que détails.
Le détail le plus important : quelles données donnez-vous à GPT à l'étape 1 ? Vous ne pouvez pas tout jeter dessus; il ne peut gérer que 4k jetons en GPT-3.5, ou jusqu'à 32k en GPT-4, ce qui est beaucoup plus lent et plus cher.
La recherche vectorielle vous permet de prendre la requête exacte que vous avez déjà créée pour l'envoyer à GPT et de la transmettre à votre base de données, où vous mettez tout ce que vous savez sur le client. La recherche vectorielle répond littéralement à "quelles sont les données les plus pertinentes pour cette requête" sans aucun effort supplémentaire de votre part ; c'est presque magique.
(Je crois fermement que la recherche vectorielle devrait être une fonctionnalité de votre base de données d'application principale et non un système séparé, c'est pourquoi
Une fois que vous avez vos données les plus pertinentes et votre requête, vous les regroupez et appelez OpenAI, vous obtenez votre réponse et vous avez terminé. (Je passe sous silence certains défis, comme "
Ainsi, un fournisseur de contenu en streaming utiliserait des données telles que : chaque session que Jonathan a passée avec le titre, les acteurs et la catégorie ; combien de temps il l'a regardé; plus toutes les métadonnées que nous pouvons trouver, puis dénormalisez le tout en un seul bloc de texte et exécutez-le dans l'encodeur pour obtenir un vecteur.
Et si c'était Netflix, ce serait super facile, parce que
Une fois cela fait, vous pouvez récupérer les lignes pertinentes de Cassandra avec une requête comme celle-ci, où ? est une variable de liaison pour votre vecteur de requête que vous obtenez de la même API d'intégration :
SELECT original_data_text FROM user_recommendation_data WHERE user_id = 'jonathan' ORDER BY embedding ANN OF ? LIMIT 20
Ensuite, vous ajoutez ces résultats à votre invite LLM, et… c'est tout. Vous avez maintenant un système de recommandation que vous avez construit en une semaine sans doctorat, juste
Mais même si vous avez besoin de créer un modèle personnalisé, les LLM peuvent vous aider à générer des données, des étiquettes et des fonctionnalités pour le faire. Cela, cependant, est un sujet pour un autre article!
je recommande la lecture
Par Jonathan Ellis, DataStax