L'IA révolutionne le divertissement et l'e-sport, et cela est particulièrement vrai dans le monde hautement compétitif de l'eSport. Les joueurs peuvent grandement bénéficier d'un assistant ou d'un manager de l'IA pour construire l'équipe ultime. Un tel outil pourrait tirer parti de vastes ensembles de données pour identifier les modèles et les stratégies indétectables par l'œil humain. Explorons la construction d'un gestionnaire d'e-sport propulsé par l'IA - en particulier, un constructeur d'équipe vailorant - pour vous aider à construire votre équipe de rêve et à dominer la compétition.
* Cet article fait partie du *** Data Science Blogathon.
Ce gestionnaire AI, construit à l'aide du substratum rocheux AWS, est spécialement conçu pour gérer et améliorer le gameplay vailorant. Il utilise des modèles avancés d'apprentissage automatique pour analyser les performances des joueurs, offrir des conseils stratégiques et optimiser les compositions d'équipe. En intégrant les capacités d'AWS Bedrock, nous visons à créer un outil qui aide non seulement les joueurs à améliorer leurs compétences, mais augmente également leur plaisir global du jeu. Notre approche se concentre sur la collecte de données, l'analyse et les informations exploitables pour aider les joueurs à atteindre le niveau supérieur de la compétition valorante.
Nous générerons des données synthétiques, reflétant vaguement les données du joueur réel trouvées dans un ensemble de données Kaggle. Un script Python génère des valeurs artificielles pour chaque métrique en jeu basée sur le personnage du lecteur. Les mesures clés comprennent:
Ces données sont utilisées pour créer une base de données SQLite à l'aide d'un script Python ( sqlite.pyscript
). Un exemple de génération de données pour un rôle "duelliste" est illustré ci-dessous:
Si le rôle == "Duellist": moyen_combat_score = Round (np.random.normal (300, 30), 1) kill_deaths = rond (np.random.normal (1,5, 0,3), 2) moyen_damage_per_round = rond (np.random.ormal (180, 20), 1) kills_per_round = round (np.random.normal (1,5, 0,3), 2) assister_per_round = Round (np.random.normal (0,3, 0,1), 2) first_kills_per_round = rond (np.random.uniformes (0,1, 0,4), 2) first_deaths_per_round = rond (np.random.uniformes (0,0, 0,2), 2) Headshot_Pecentage = Round (np.random.uniformes (25, 55), 1) CLUTCH_SUCCESS_PERCENTAGE = ROUND (np.random.uniformes (15, 65), 1)
Sur la base des demandes d'utilisateurs (par exemple, "Build a Professional Team"), le système interroge la base de données pour les joueurs optimaux. Des fonctions comme get_agents_by_role
, get_organizations
et get_regions
fournissent des données contextuelles. Les exemples de données synthétiques sont disponibles ici . L'intégration avec des données réelles via l'API Riot est également possible.
Le frontend, construit avec Streamlit, permet aux utilisateurs de spécifier le type d'équipe et les contraintes. Ces entrées déterminent la requête SQL utilisée sur la base de données SQLite.
Un exemple de sélection de requête basé sur le type d'équipe:
essayer: Si team_type == "Soumission d'équipe professionnelle": query = "" " Sélectionner * parmi les joueurs Où org dans («ascendant», «mystique», «légion», «fantôme», «montant», «nébuleuse», «orgz», «t1a») "" " # ... d'autres types d'équipe ...
Les joueurs sélectionnés sont ensuite utilisés pour construire une invite pour le LLM, demandant une analyse de leurs forces et de leurs faiblesses. La réponse du LLM fournit une analyse et suggère des ajustements.
Le frontend interagit avec AWS via la bibliothèque boto3
à l'aide d'un wrapper pour la méthode invoke_agent()
. Cela simplifie l'interaction avec le SDK AWS.
Class BerdrockAgentTrutiMewrapper: # ... (code wrapper comme avant) ...
Une instance du wrapper est initialisée et les demandes sont envoyées à l'agent AI à l'aide d'un client boto3
contenant les détails de l'agent (ID de l'agent, ID d'alias de l'agent, ID de session et invite).
essayer: runtime_client = boto3.client ("Bedrock-agent-runtime", ...) BedRock_Wrapper = BedRockAgentTrutiMewrapper (Runtime_Client) output_text = bedrock_wrapper.invoke_agent (agent_id, agent_alias_id, session_id, invite) print (f "Agent Response: {output_text}")
La flexibilité de la LLM peut être ajustée pour l'équilibre de la précision et de la créativité grâce à des paramètres de température ou à l'ingénierie rapide.
Accédez à la console AWS Boundrock, demandez un accès au modèle (Claude et Titan Embeddings sont recommandés) et créez un seau S3 pour stocker vos documents (données sur les types de joueurs, les stratégies et les directives d'interprétation métrique). Créez une base de connaissances (KB) liée à ce seau S3. Le KB utilise OpenSearch Serverless (OSS) pour créer une base de données vectorielle. Créez un agent d'IA, spécifiant le KB et ajoutant des instructions comme:
<code>"You are an expert at Valorant player and analyst. Answer the questions given to you using the knowledge base as a reference only."</code>
L'application utilise plusieurs variables d'environnement (voir le tableau dans la réponse d'origine).
N'oubliez pas ces points clés lorsque vous travaillez avec AWS Boudrock:
Cet article détaille la construction d'une chaîne d'outils de chiffon avec le fondement AWS. Les outils d'IA transforment divers domaines, et cet exemple démontre leur potentiel dans l'eSport.
(Identique à la réponse originale)
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!