Maison >Périphériques technologiques >IA >Modèles Amazon Nova: un guide avec des exemples
Amazon a lancé une nouvelle génération de suites de modèle de base de base conçues pour permettre une utilisation rentable et à grande échelle. Nova rejoint maintenant l'écosystème LLM d'Amazon, intégré dans son service de substratum rocheux d'Amazon, et prend en charge plusieurs modes tels que le texte, l'image et la génération de vidéos.
Cet article décrira les nouveaux modèles Amazon Nova, expliquera comment y accéder via le service de substratum rocheux, mettra en évidence les capacités et les avantages de chaque modèle et démontrent ses applications pratiques, y compris l'intégration dans des applications multi-agents.
Le modèle Nova d'Amazon est le modèle sous-jacent très attendu accessible via le service de substratum rocheux d'Amazon. Ils sont conçus pour un large éventail d'applications, notamment un raisonnement rapide et à faible coût, une compréhension multimédia et une génération de contenu créatif. Explorons chaque modèle.
Le modèle le plus rapide de la série avec la vitesse la plus élevée et les coûts informatiques les plus élevés. Pour les applications qui nécessitent une génération rapide et texte uniquement, le micro est le meilleur avec des vitesses d'inférence de 200 jetons par seconde.
Certaines des meilleures applications de Micro incluent des analyses en temps réel, des chatbots interactifs et des services de génération de texte à fort trafic.
Nova Micro Benchmark. (Source: Amazon)
Le membre multimodal rentable de la famille Nova, Lite établit un bon équilibre entre la vitesse et la haute précision sur plusieurs tâches, en particulier dans les tâches d'inférence et de traduction par rapport à des produits similaires comme GPT-4O ou LLAMA.
Il peut gérer efficacement un grand nombre de demandes tout en maintenant une grande précision. Pour les applications où la vitesse est très importante et nécessite des modèles qui peuvent gérer plusieurs modalités, Lite peut être le meilleur choix.
Nova Lite Benchmark. (Source: Amazon)
Le modèle le plus avancé pour le traitement de texte de la famille Nova, Nova Pro offre une précision impressionnante tout en étant à un coût de calcul relativement faible par rapport aux modèles avec des capacités similaires.
Selon Amazon, Nova Pro est idéal pour des applications telles que le résumé vidéo, la question et la réponse, le raisonnement mathématique, le développement de logiciels et les agents de l'IA qui peuvent effectuer des flux de travail en plusieurs étapes. Comme les modèles Micro and Lite, Nova Pro prend actuellement en charge le réglage fin.
Nova Pro Benchmark. (Source: Amazon)
Le modèle multimodal le plus puissant de cette série, qui devrait être lancé au début de 2025, devrait être une version améliorée du modèle Pro.
Canvas est la solution de génération d'images de Nova. Il peut générer des images de haute qualité, contrôler les schémas de couleurs et les styles, et fournir des fonctionnalités telles que la réparation, des images étendues, la conversion de style et l'élimination des arrière-plans. Ce modèle semble être très efficace pour créer des images marketing, des maquettes de produits et plus encore.
Nova Reel est un modèle de génération de vidéos conçu pour fournir une sortie vidéo de haute qualité et facile à personnaliser. Nova Reel permet aux utilisateurs de créer et de contrôler le style visuel, le rythme et le mouvement de la caméra dans la vidéo. Comme les autres modèles Nova, Reel est livré avec des contrôles de sécurité intégrés pour une génération de contenu cohérente.
Vous pouvez utiliser Amazon Bedrock Playground pour tester et comparer plusieurs modèles avec une interface utilisateur prêt à l'emploi.
Je suppose que vous avez configuré la CLI et le substratum rocheux d'Amazon et disponible. Sinon, vous pouvez vous référer à mon didacticiel sur le coordinateur multi-agent AWS, où j'ai détaillé les étapes pour configurer un environnement à l'aide du modèle fourni par le service de substratum rocheux. De plus, le blog de Nils Durner fournit des captures d'écran étape par étape qui vous guident tout au long du processus de mise en place de votre service de substratum rocheux.
Amazon Bedrock Playground
En comparant Nova Micro et Pro, j'ai remarqué que l'écart de précision entre les deux modèles n'est pas évident. Bien que Micro soit plus de deux fois plus rapide que Pro, il fournit suffisamment de réponses pour la plupart des cas d'utilisation réguliers. D'un autre côté, Pro a tendance à produire des réponses légèrement plus détaillées et plus longues.
Pour utiliser le modèle NOVA via l'API et l'intégrer dans votre code, assurez-vous d'abord que votre compte AWS, AWS CLI et l'accès au modèle sont correctement configurés (la documentation fournit des conseils pour cela).
Ensuite, installez la bibliothèque Boto3, le SDK Python pour AWS, qui vous permet d'utiliser leurs modèles.
<code>pip install boto3</code>
Vous pouvez interagir par programme avec le modèle à l'aide d'un script comme indiqué ci-dessous:
<code>import boto3 import json client = boto3.client(service_name="bedrock-runtime") messages = [ {"role": "user", "content": [{"text": "Write a short poem"}]}, ] model_response = client.converse( modelId="us.amazon.nova-lite-v1:0", messages=messages ) print("\n[Full Response]") print(json.dumps(model_response, indent=2)) print("\n[Response Content Text]") print(model_response["output"]["message"]["content"][0]["text"])</code>
Nous mettons maintenant en œuvre un projet de démonstration pour tester les capacités d'agent de Nova Micro. Nous utiliserons le cadre du coordinateur AWS Multi-Proxy pour configurer une application Python simplifiée qui contient deux proxies: Python Developer Agent et ML Expert Agent. Si vous souhaitez configurer un coordinateur, vous pouvez utiliser ce guide de coordinateur Multi-Proxy AWS.
Nous utiliserons également Chainlit (un package Python open source) pour implémenter une interface utilisateur simple pour l'application. Tout d'abord, installez les bibliothèques nécessaires:
<code>chainlit==1.2.0 multi_agent_orchestrator==0.0.18</code>
Nous importons d'abord les bibliothèques nécessaires:
<code>import uuid import chainlit as cl from multi_agent_orchestrator.orchestrator import MultiAgentOrchestrator, OrchestratorConfig from multi_agent_orchestrator.classifiers import BedrockClassifier, BedrockClassifierOptions from multi_agent_orchestrator.agents import AgentResponse from multi_agent_orchestrator.agents import BedrockLLMAgent, BedrockLLMAgentOptions, AgentCallbacks from multi_agent_orchestrator.orchestrator import MultiAgentOrchestrator from multi_agent_orchestrator.types import ConversationMessage import asyncio import chainlit as cl</code>
Ce framework utilise un classificateur pour sélectionner le meilleur proxy pour les demandes utilisateur entrantes. Nous utilisons "anthropic.claude-3-haiku-20240307-v1: 0" comme modèle du classificateur.
<code>class ChainlitAgentCallbacks(AgentCallbacks): def on_llm_new_token(self, token: str) -> None: asyncio.run(cl.user_session.get("current_msg").stream_token(token)) # Initialize the orchestrator custom_bedrock_classifier = BedrockClassifier(BedrockClassifierOptions( model_id='anthropic.claude-3-haiku-20240307-v1:0', inference_config={ 'maxTokens': 500, 'temperature': 0.7, 'topP': 0.9 } )) orchestrator = MultiAgentOrchestrator(options=OrchestratorConfig( LOG_AGENT_CHAT=True, LOG_CLASSIFIER_CHAT=True, LOG_CLASSIFIER_RAW_OUTPUT=True, LOG_CLASSIFIER_OUTPUT=True, LOG_EXECUTION_TIMES=True, MAX_RETRIES=3, USE_DEFAULT_AGENT_IF_NONE_IDENTIFIED=False, MAX_MESSAGE_PAIRS_PER_AGENT=10, ), classifier=custom_bedrock_classifier )</code>
Ensuite, nous définissons deux agents alimentés par Nova Micro, l'un agissant en tant que développeur Python et l'autre agissant en tant qu'expert en apprentissage automatique.
<code>pip install boto3</code>
Enfin, nous définissons le corps du script afin que l'interface utilisateur Chainlit puisse gérer les demandes des utilisateurs et les réponses proxy.
<code>import boto3 import json client = boto3.client(service_name="bedrock-runtime") messages = [ {"role": "user", "content": [{"text": "Write a short poem"}]}, ] model_response = client.converse( modelId="us.amazon.nova-lite-v1:0", messages=messages ) print("\n[Full Response]") print(json.dumps(model_response, indent=2)) print("\n[Response Content Text]") print(model_response["output"]["message"]["content"][0]["text"])</code>
Le résultat est Chainlit UI, qui vous permet de discuter avec le modèle Nova au besoin.
Exécutez notre application sur Chainlit
Des modèles d'image et de génération de vidéos sont également disponibles via l'API. Vous pouvez vous référer à la documentation des scripts qui montrent comment les utiliser.
Le modèle Amazon Nova représente un progrès majeur dans l'écosystème du modèle sous-jacent, combinant la précision de pointe, la vitesse, la rentabilité et les capacités multimodales. À mesure que la suite Amazon LLM se développe avec le lancement de nouveaux produits, il devient une option puissante pour créer des applications rentables et évolutives derrière AWS.
Que vous développiez une application d'agent AI, créez un chatbot pour le service client ou que vous exploriez en tant que développeur, essayer d'utiliser le modèle Nova est une expérience intéressante. Il est également utile d'approfondir votre compréhension des outils AWS, Boutrock et Amazon.
Dans cet article, nous introduisons les aspects clés de ces modèles, comment les expérimenter et comment créer des applications de base de l'IA proxy de base en utilisant le modèle NOVA.
Apprenez à optimiser les services AWS pour la rentabilité et les performances. Apprenez AWS
Cette sortie révisée maintient la signification et la structure d'origine tout en utilisant des structures de libellés et de phrases différentes.
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!