Julep AI : une plateforme cloud d'IA pour construire des flux de travail multi-étapes pour les corps intelligents à l'aide de DSLs
Introduction générale
Julep AI est une plateforme permettant de créer et de gérer des intelligences IA qui se souviennent des interactions passées et exécutent des tâches complexes en plusieurs étapes. Julep AI offre une mémoire à long terme et des capacités de gestion de processus en plusieurs étapes et prend en charge l'intégration d'outils et d'API externes, ce qui lui permet de gérer des scénarios complexes. Les utilisateurs peuvent écrire de simples fichiers YAML pour définir les différentes étapes d'une tâche, les points de décision, les boucles, le traitement parallèle, etc. et automatiser l'exécution de ces tâches dans le nuage.
Julep AI introduit un nouveau langage spécifique au domaine (DSL) et un serveur pour gérer les intelligences IA et les tâches à plusieurs étapes. Ce DSL permet aux utilisateurs de décrire et de gérer plus intuitivement des flux de travail complexes sans avoir à écrire de grandes quantités de code traditionnel. La plateforme cloud de Julep AI prend en charge l'exécution de ces tâches, en veillant à ce qu'elles soient fiables et efficaces.

Liste des fonctions
- Agent d'IA persistantLes Intelligentsia sont capables de se souvenir du contexte et de l'information pour soutenir une interaction à long terme.
- session complèteLes services d'aide à l'enfance : Suivre les interactions antérieures pour fournir une réponse personnalisée.
- tâche en plusieurs étapesLes processus : Construire des processus complexes à plusieurs étapes par le biais de boucles et de décisions.
- gestion des tâchesLe travailleur social : Il gère des tâches qui peuvent s'étendre sur de longues périodes et veille à ce que les tâches soient accomplies avec succès.
- Outils intégrés et intégration APILe système d'information sur les intelligences : il soutient l'utilisation d'outils intégrés et d'API externes afin d'étendre les fonctionnalités des intelligences.
- autoguérison: Réessayer automatiquement les étapes qui ont échoué et renvoyer le message pour s'assurer que la tâche se déroule correctement.
- RAG (Retrieval Augmentation Generation)Les données de l'utilisateur : Utilisez un magasin de documents pour créer un système de récupération et d'utilisation de vos propres données.
Utiliser l'aide
Processus d'installation
- S'inscrire à un comptePour cela, il faut : se rendre sur le site de Julep AI, cliquer sur le bouton "S'inscrire" et remplir les informations nécessaires pour finaliser votre inscription.
- Obtenir la clé APIAprès vous être connecté, trouvez l'option de génération de clé API dans le panneau de l'utilisateur pour générer et sauvegarder la clé API.
- Télécharger le SDKTélécharger le SDK approprié (par exemple Python, Node.js, etc.) en fonction des exigences de la plateforme et l'installer conformément à la documentation.
Lignes directrices pour l'utilisation
Créer l'intelligence
- Définir l'intelligenceDans le panneau de contrôle, cliquez sur "Créer un renseignement" et remplissez le nom et la description du renseignement.
- modèle de configurationLa première étape consiste à choisir un modèle d'IA approprié (par exemple, GPT-4) et à définir les paramètres par défaut (température, nombre maximal de jetons, etc.).
- Ajouter des outilsAjouter les outils nécessaires aux intelligences, tels que la recherche sur le web, les appels d'API, etc.
Définir des processus à plusieurs étapes
- Écrire des fichiers YAMLDans le panneau de contrôle, écrivez un processus à plusieurs étapes en utilisant YAML pour définir les arbres de décision, les boucles et l'exécution parallèle.
- Téléchargement de fichiersLe fichier YAML écrit est téléchargé sur la plateforme et testé.
- Processus de déploiementUne fois le test réussi, cliquez sur le bouton "Déployer" pour mettre le processus en ligne.
Prototypage rapide
- Créer un nouveau projetDans le panneau de contrôle, cliquez sur "Nouveau projet", remplissez le nom et la description du projet.
- Ajouter un module de fonctionLes modules fonctionnels : Sélectionnez et ajoutez les modules fonctionnels requis (par exemple RAG, gestion de l'état, etc.) selon les besoins.
- Tests et itérationsTest sur la plate-forme, ajustement et optimisation des modules fonctionnels en temps réel.
Préparation du niveau de production
- Infrastructure de configurationDans le panneau de contrôle, configurez les options d'infrastructure telles que la mise à l'échelle automatique, l'équilibrage de la charge, etc.
- Mise en place de la gestion des erreursLes tâches doivent être exécutées de manière à ce qu'elles soient automatiquement relancées en cas d'échec.
- Projets en ligneAprès avoir terminé la configuration, cliquez sur le bouton "Go Live" pour mettre le projet en production.
Conception modulaire
- Sélectionner le moduleDans le panneau de contrôle, parcourez et sélectionnez le module souhaité (par exemple, connexion API externe, commutation LLM, etc.)
- intégration de la fonction "glisser-déposerLes modules : Intégrer des modules dans des projets à l'aide d'une interface de type "glisser-déposer".
- Essais et optimisationTest en temps réel de la fonctionnalité du module à des fins d'optimisation et de mise au point.
Expansion illimitée
- Configuration des options étenduesDans le panneau de configuration, configurez les options de mise à l'échelle automatique et d'équilibrage de la charge.
- Suivi des performancesLes outils de surveillance fournis par la plate-forme permettent de contrôler en temps réel les performances du système et la simultanéité des utilisateurs.
- Ajustement de la configurationLes données de surveillance permettent d'ajuster les configurations d'expansion et d'équilibrage de la charge afin d'assurer un fonctionnement stable du système.
protection de l'avenir
- Ajouter un nouveau modèleDans le panneau de configuration, cliquez sur "Ajouter un nouveau modèle" pour sélectionner et configurer un nouveau modèle d'IA.
- Intégration de nouveaux outilsLes outils : parcourir les nouveaux outils offerts par la plateforme, les sélectionner et les intégrer dans des projets existants.
- Essais et déploiementLes services de la Commission européenne sont les suivants : tester les nouveaux modèles et outils pour en assurer la compatibilité et la stabilité, puis les déployer en temps réel.
exemple de tâche
Julep est bien adapté aux applications qui nécessitent des cas d'utilisation de l'IA allant au-delà des simples modèles de réponse aux signaux.
Exemple rapide
Imaginez un agent de recherche en IA capable d'effectuer les actions suivantes :
- Sélectionner un sujet
- 30 requêtes de recherche sur ce sujet
- Recherche simultanée sur le web
- Résultats sommaires
- Envoyer le résumé sur Discord
Dans Julep, il s'agira d'une tâche distincte, de 80 lignes de code, puis d'une exécution entièrement hébergée, le tout réalisé de manière indépendante. Toutes les étapes sont réalisées sur les propres serveurs de Julep, vous n'avez donc rien à faire.
Il s'agit d'un exemple valable :
name: Research Agent
# Optional: Define the input schema for the task
input_schema:
type: object
properties:
topic:
type: string
description: The main topic to research
num_questions:
type: integer
description: The number of search queries to generate
# Define the tools that the agent can use
tools:
- name: web_search
type: integration
integration:
provider: brave
setup:
api_key: <your-brave-api-key>
- name: discord_webhook
type: api_call
api_call:
url: https://discord.com/api/webhooks/<your-webhook-id>/<your-webhook-token>
method: POST
headers:
Content-Type: application/json
# Special variables:
# - inputs: for accessing the input to the task
# - outputs: for accessing the output of previous steps
# - _: for accessing the output of the previous step
# Define the main workflow
main:
- prompt:
- role: system
content: >-
You are a research assistant.
Generate {{inputs[0].num_questions|default(30, true)}} diverse search queries related to the topic:
{{inputs[0].topic}}
Write one query per line.
unwrap: true
# Evaluate the search queries using a simple python expression
- evaluate:
search_queries: "_.split(NEWLINE)"
# Run the web search in parallel for each query
- over: "_.search_queries"
map:
tool: web_search
arguments:
query: "_"
parallelism: 5
# Collect the results from the web search
- evaluate:
search_results: _
# Summarize the results
- prompt:
- role: system
content: >
You are a research summarizer. Create a comprehensive summary of the following research results on the topic {{inputs[0].topic}}.
The summary should be well-structured, informative, and highlight key findings and insights. Keep the summary concise and to the point.
The length of the summary should be less than 150 words.
Here are the search results:
{{_.search_results}}
unwrap: true
settings:
model: gpt-4o-mini
- evaluate:
discord_message: |-
f'''
**Research Summary for {inputs[0].topic}**
{_}
'''
# Send the summary to Discord
- tool: discord_webhook
arguments:
json_:
content: _.discord_message[:2000] # Discord has a 2000 character limit
Dans cet exemple, Julep gère automatiquement l'exécution parallèle, relance les étapes qui ont échoué, renvoie les demandes d'API et assure la fiabilité de la tâche jusqu'à son achèvement.
Exemple de résultats de sortie
Cette opération s'exécute en 30 secondes et produit le résultat suivant :
Résumé de la recherche sur l'intelligence artificielle
Résumé des résultats de la recherche sur l'intelligence artificielle (IA)
bref
Ces dernières années, des progrès considérables ont été réalisés dans le domaine de l'intelligence artificielle (IA), caractérisée par le développement de méthodes et de techniques permettant aux machines de percevoir leur environnement, d'apprendre à partir de données et de prendre des décisions. Cette synthèse se concentre sur les résultats de diverses recherches liées à l'IA.Principales conclusions
- Définition et portée de l'intelligence artificielle : :
L'intelligence artificielle est définie comme une branche de l'informatique qui se concentre sur la création de systèmes capables d'effectuer des tâches qui requièrent une intelligence de type humain, notamment l'apprentissage, le raisonnement et la résolution de problèmes (Wikipedia). Elle couvre une variété de sous-domaines, dont l'apprentissage automatique, le traitement du langage naturel, la robotique et la vision par ordinateur.- Impact et application : :
La technologie de l'IA est intégrée dans de nombreux domaines afin d'accroître l'efficacité et la productivité. Les applications vont des voitures autonomes et des diagnostics médicaux à l'automatisation du service client et aux prévisions financières (OpenAI). L'engagement de Google à mettre l'IA au service de tous souligne son potentiel à améliorer considérablement la vie quotidienne en améliorant l'expérience de l'utilisateur sur toutes les plateformes (Google AI).- considérations éthiques : :
Les implications éthiques de l'IA font l'objet d'un débat permanent, notamment en ce qui concerne la protection de la vie privée, la partialité et la responsabilité dans les processus de prise de décision. La nécessité d'un cadre pour garantir l'utilisation sûre et responsable des technologies d'IA (OpenAI) a été soulignée.- Mécanismes d'apprentissage : :
Les systèmes d'IA utilisent différents mécanismes d'apprentissage tels que l'apprentissage supervisé, l'apprentissage non supervisé et l'apprentissage par renforcement. Ces méthodes permettent à l'IA d'améliorer ses performances en tirant des enseignements des expériences et des données passées (Wikipedia). La différence entre l'apprentissage supervisé et non supervisé est cruciale : l'apprentissage supervisé repose sur des données étiquetées, tandis que l'apprentissage non supervisé reconnaît des modèles sans étiquettes prédéfinies (non supervisé).- orientation future : :
Les développements futurs de l'IA devraient se concentrer sur l'amélioration de l'interprétabilité et de la transparence des systèmes d'IA afin de s'assurer qu'ils sont en mesure de fournir des décisions et des actions judicieuses (OpenAI). Des efforts sont également déployés pour rendre les systèmes d'IA plus accessibles et plus conviviaux, afin d'encourager leur adoption par différentes personnes et industries (Google AI).rendre un verdict
L'intelligence artificielle représente une force de transformation dans de nombreux domaines, promettant de remodeler les industries et d'améliorer la qualité de vie. Toutefois, à mesure que ses capacités se développent, il est essentiel de se pencher sur les implications éthiques et sociétales qui l'accompagnent. La poursuite de la recherche et de la collaboration entre les technologues, les éthiciens et les décideurs politiques sera essentielle pour naviguer dans le futur paysage de l'IA.
Processus de déploiement de Python
Pour commencer à utiliser Julep, installez-le à l'aide de pip :
pip install julep
Obtenez votre clé API ici.
### Step 0: Setup import time import yaml from julep import Julep # or AsyncJulep client = Julep(api_key="your_julep_api_key") ### Step 1: Create an Agent agent = client.agents.create( name="Storytelling Agent", model="claude-3.5-sonnet", about="You are a creative storyteller that crafts engaging stories on a myriad of topics.", ) ### Step 2: Create a Task that generates a story and comic strip task_yaml = """ name: Storyteller description: Create a story based on an idea. tools: - name: research_wikipedia type: integration integration: provider: wikipedia method: search main: # Step 1: Generate plot idea - prompt: - role: system content: You are {{agent.name}}. {{agent.about}} - role: user content: > Based on the idea '{{_.idea}}', generate a list of 5 plot ideas. Go crazy and be as creative as possible. Return your output as a list of long strings inside ```yaml 标签位于您的回复末尾。 展开:true - 评价: 情节想法:load_yaml(_.split('```yaml')[1].split('```')[0].strip()) # 第二步:从情节思路中提取研究领域 - 迅速的: - 角色:系统 内容:您是 {{agent.name}}。{{agent.about}} - 角色:用户 内容: > 以下是一些故事情节的想法: {% 表示 _.plot_ideas 中的想法 %} - {{主意}} {% 结束 %} 为了发展故事情节,我们需要研究情节思路。 我们应该研究什么?写下你认为有趣的情节想法的维基百科搜索查询。 将输出作为 yaml 列表返回```yaml tags at the end of your response. unwrap: true settings: model: gpt-4o-mini temperature: 0.7 - evaluate: research_queries: load_yaml(_.split('```yaml')[1].split('```')[0].strip()) # Step 3: Research each plot idea - foreach: in: _.research_queries do: tool: research_wikipedia arguments: query: _ - evaluate: wikipedia_results: 'NEWLINE.join([f"- {doc.metadata.title}: {doc.metadata.summary}" for item in _ for doc in item.documents])' # Step 4: Think and deliberate - prompt: - role: system content: You are {{agent.name}}. {{agent.about}} - role: user content: |- Before we write the story, let's think and deliberate. Here are some plot ideas: {% for idea in outputs[1].plot_ideas %} - {{idea}} {% endfor %} Here are the results from researching the plot ideas on Wikipedia: {{_.wikipedia_results}} Think about the plot ideas critically. Combine the plot ideas with the results from Wikipedia to create a detailed plot for a story. Write down all your notes and thoughts. Then finally write the plot as a yaml object inside ```yaml 标签位于响应末尾。yaml 对象应具有以下结构: ```yaml title: "<string>" characters: - name: "<string>" about: "<string>" synopsis: "<string>" scenes: - title: "<string>" description: "<string>" characters: - name: "<string>" role: "<string>" plotlines: - "<string>"``` 确保 yaml 有效,且角色和场景不为空。还要注意分号和编写 yaml 的其他问题。 展开:true - 评价: 情节:“load_yaml(_.split('```yaml')[1].split('```')[0].strip())” """ 任务 = 客户端.任务.创建( agent_id=代理.id, **yaml.safe_load(任务_yaml) ) ### 步骤 3:执行任务 执行 = 客户端.执行.创建( 任务ID=任务ID, 输入={“idea”:“一只学飞的猫”} ) # 🎉 观看故事和漫画面板的生成 while (result := client.executions.get(execution.id)).status 不在 ['成功', '失败'] 中: 打印(结果.状态,结果.输出) 时间.睡眠(1) # 📦执行完成后,检索结果 如果 result.status ==“成功”: 打印(结果.输出) 别的: 引发异常(结果.错误)
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...