Nous utilisons des cookies pour vous garantir une expérience optimale. Si vous acceptez, vous êtes en accord avec cette utilisation. Pour plus d'informations, veuillez consulter notre politique de confidentialité.
/

Innovation

Révolutionner l'efficacité en laboratoire : l'impact des assistants vocaux intelligents sur les flux de travail commerciaux

Mariam Jabara
Mariam Jabara
7
min read
Femme travaillant dans un laboratoire

Ces dernières années, il y a eu une forte tendance à la numérisation, à l'optimisation et à la rationalisation des flux de travail dans les laboratoires commerciaux et cliniques, tels que ceux des compagnies pharmaceutiques. En plus de l'émergence des cahiers de laboratoire électroniques (ELN) et des systèmes de gestion de l'information de laboratoire (LIMS), l'intelligence artificielle (IA) est explorée comme un moyen d'accroître encore davantage l'efficacité et la précision des flux de travail en laboratoire, et même de s'intégrer aux solutions logicielles existantes. 

Selon une analyse de divers cas d'utilisation de l'IA dans l'industrie pharmaceutique réalisée par PWC, où quatre domaines d'activité ont été examinés : opérations, recherche et développement (R&D), commercial et fonctions de support, les cas d'utilisation de l'IA dans les opérations se sont avérés les plus impactants (représentant 39 % de l'impact global), suivis par les cas d'utilisation en R&D et commerciaux à 26 % et 24 % respectivement. Des exemples de cas d'utilisation opérationnels peuvent inclure la gestion des stocks ou l'automatisation de la capture et de l'analyse des données. Leur rapport suggère également un doublement potentiel des profits d'exploitation grâce à l'application de l'IA dans divers domaines de l'entreprise. En supposant un degré élevé d'adoption et d'industrialisation de l'IA, cela pourrait conduire à une augmentation de 254 milliards de dollars des profits d'exploitation dans le monde d'ici 2030, selon l'analyse de PWC.

Récemment, nous avons eu le plaisir de soutenir une grande entreprise pharmaceutique dans le pilotage d'un assistant vocal alimenté par l'IA pour rationaliser les flux de travail et la gestion des stocks dans leur laboratoire. Ils cherchaient à centraliser et à augmenter la précision de leur gestion des stocks, tout en réduisant le temps consacré à la saisie des données et à la tenue de registres pendant les protocoles expérimentaux. Notre objectif était d'accroître l'efficacité dans le laboratoire en développant un assistant vocal capable de guider les scientifiques à travers les flux de travail de bout en bout.

Caractéristiques du projet pilote

Les fonctionnalités les plus importantes à tester pour notre client étaient la collecte de données et la tenue de registres activées par la voix pendant les protocoles expérimentaux, ainsi que la gestion des stocks activée par la voix. De plus, la capacité à tenir des registres manuels à jour, en particulier les registres d'inventaire, s'est avérée difficile avec leur approche actuelle. Il était donc essentiel non seulement de permettre aux scientifiques d'enregistrer des données et l'utilisation de l'inventaire uniquement avec leur voix, mais aussi de synchroniser les données saisies par l'utilisateur avec les systèmes de gestion des stocks pour s'assurer que les éléments requis pour les protocoles à venir étaient en stock et facilement accessibles.

Dans les environnements de laboratoire, même de petites erreurs humaines apparemment insignifiantes peuvent être coûteuses, nécessitant parfois la répétition d'une expérience. De plus, les protocoles peuvent être complexes et inclure des étapes sensibles au temps, où une pause pour enregistrer des données, prendre des notes ou consulter les prochaines étapes peut être très perturbante et inefficace. Permettre aux scientifiques d'interagir avec leurs protocoles et d'enregistrer des données à l'aide de leur voix a un potentiel énorme pour offrir une expérience plus fluide en laboratoire, tout en réduisant les erreurs et en augmentant l'efficacité opérationnelle.

En résumé, les défis communs dans les laboratoires pharmaceutiques que l'assistant vocal visait à relever sont :

- La saisie manuelle des données et les erreurs de transcription;

- Des processus de récupération des données chronophages;

- La difficulté à maintenir des registres d'inventaire précis et à jour.

Design et technologie

Chez Osedea, notre équipe de design joue un rôle crucial dans la découverte et le développement de produits. Grâce à leurs principes de design centrés sur l'utilisateur, ils soutiennent notre équipe de développement et nos clients dans la conception de fonctionnalités qui s'intègrent facilement aux flux de travail existants. Ils identifient souvent des domaines qui ne sont pas des points de friction explicites, mais des opportunités d'amélioration. Souvent non perçus comme un problème par l'utilisateur, ces touches supplémentaires améliorent grandement l'expérience utilisateur lorsqu'elles sont mises en œuvre.

Pour construire le prototype de ce projet pilote, nous avons utilisé LangChain, OpenAI GPT-4o-mini, Whisper d'OpenAI en local, et l'appel de fonctions/outils via LangChain. Pour la surveillance des modèles, nous avons utilisé LangSmith, une plateforme de développement permettant de déboguer, collaborer, tester et surveiller les applications LLM.

Globalement, notre application peut être divisée en trois composantes principales :

  1. La reconnaissance vocale et l'activation vocale
  2. Le remplissage automatique des enregistrements
  3. La gestion des stocks

Sélection d'un modèle de reconnaissance vocale

Avant de sélectionner Whisper comme notre modèle de reconnaissance vocale, nous avons effectué une série d'expériences de benchmarking sur des jeux de données publics, ainsi que sur un jeu de données collecté en interne spécifique aux terminologies pharmaceutiques. Nous avons examiné des métriques telles que le taux d'erreur de mots (WER) et le facteur de temps réel (RTF), qui est le rapport entre le temps nécessaire pour transcrire le fichier audio et la durée de l'audio. Pour en savoir plus sur notre processus de benchmarking, lisez nos analyses approfondies ici.

Appel de fonctions et requête *** revoir titre

LangChain est un cadre pour le développement d'applications basées sur des grands modèles de langage (LLM). LangChain fournit des outils sous forme de blocs de construction interopérables permettant le développement de chaînes personnalisées et complexes, en plus de prendre en charge la génération augmentée par récupération (RAG) et des intégrations avec d'autres sources de connaissances et fournisseurs de cloud comme AWS et MongoDB.

L'appel d'outils, ou parfois appelé appel de fonctions, permet à un modèle de répondre à une requête utilisateur en générant une sortie correspondant à un schéma prédéfini, ou d'exécuter un ensemble de tâches définies par l'utilisateur.

Par exemple, si le modèle reçoit une requête qui pourrait bénéficier de l'utilisation d'un moteur de recherche pour répondre, un appel à un outil de moteur de recherche personnalisé serait approprié. Le modèle émettra alors un appel au moteur de recherche, l'exécutant et renverra la sortie au LLM. Dans notre cas, en fonction de la commande vocale de l'utilisateur, nous pourrions vouloir appeler des fonctions personnalisées pour exécuter les étapes souhaitées telles que fournies par les scientifiques (par exemple, notez que j'ai utilisé 50 mL de tampon à l'étape 15). Un appel de fonction personnalisé extraira alors les arguments appropriés (quantité de tampon utilisée) et mettra à jour le protocole approprié. Effectivement, le modèle analyse la requête de l'utilisateur pour sélectionner l'outil approprié, extraire les arguments et appeler la fonction.

Voici un simple exemple pour illustrer comment un outil pourrait être appelé:

from langchain_core.tools import tool

@tool
def percent_diff(a: float, b: float) -> float:
   """Calculates the absolute percent difference between two values, rounded to the nearest tenth.

   Args:
       a: first value
       b: second value
   """
   return round(abs(a-b)/(((a+b)/2))*100,1)

@tool
def percent_yield(theoretical: float, actual: float) -> float:
  """Calculates the percent yield of a product, relative to the theoretical yield, rounded to the nearest tenth.
Args:
theortical: the theoretical yield of the product
actual: the actual yield of the product
  """
  return round(actual/theoretical*100,1)

tools = [percent_diff, precent_yield]

Tout d'abord, définissons certains outils dont nous pourrions avoir besoin dans le laboratoire :

from langchain_openai import ChatOpenAI
from langchain.agents import AgentExecutor, create_tool_calling_agent
from langchain_core.prompts import ChatPromptTemplate 

llm = ChatOpenAI(model="gpt-4o-mini", openai_api_key="your-api-key")

prompt = ChatPromptTemplate.from_messages(
   [
       (
           "system",
           "You are a helpful assistant to scientists in a lab. Make sure to use the available tools when answering questions that require calculations.",
       ),
       ("placeholder", "{chat_history}"),
       ("human", "{input}"),
       ("placeholder", "{agent_scratchpad}"),
   ]
)

# Construct the Tools agent
agent = create_tool_calling_agent(llm, tools, prompt)

Enfin, exécutons l'agent avec notre propre requête utilisateur !

# Execute the agent
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
agent_executor.invoke({"input": "What is the percent difference between 40 mL and 47 mL"})



> Entering new AgentExecutor chain...


Invoking: `percent_diff` with `{'a': 40, 'b': 47}`




The percent difference between 40 mL and 47 mL is 16.1%.


> Finished chain.




{'input': 'What is the percent difference between 40 mL and 47 mL',
 'output': 'The percent difference between 40 mL and 47 mL is 16.1%.'}

Comme nous pouvons le voir, le modèle a sélectionné le bon outil pour calculer la différence en pourcentage, comme prévu ! Nous pouvons étendre cet exemple très simple pour gérer des requêtes plus compliquées, et même appeler des API le cas échéant pour effectuer des mises à jour ou demander des informations appropriées.

Remarque : Nous avons utilisé le dernier modèle gpt-4o-mini comme notre LLM, un modèle rentable et précis qui offre de bonnes performances, même par rapport à ses homologues plus grands. Jetez un œil ici :

Source: OpenAi

Consolider l’ensemble

Nous avons maintenant sélectionné un modèle de reconnaissance vocale pour transcrire les requêtes de nos utilisateurs en texte, exploré des fonctions pour gérer la mise en œuvre de nos diverses fonctionnalités (telles que le remplissage automatisé des formulaires et la gestion des stocks), et assemblé le tout en utilisant LangChain. Enfin, nous affichons les documents et les inventaires pertinents dans une application web, où les scientifiques peuvent visualiser la transcription de leur discours, les réponses de l'assistant IA, et les documents ou l'inventaire mis à jour en temps réel.

Impact dans le laboratoire

En utilisant Whisper, LangChain et OpenAI, nous avons pu créer un prototype d'assistant vocal pour aider les scientifiques à enregistrer des données expérimentales importantes et à tenir à jour les registres d'inventaire. Typiquement, un membre de l'équipe du laboratoire est responsable de l'enregistrement des données pendant un protocole. Avec l'intégration d'un assistant vocal permettant la capture de données en mode mains libres, un membre de l'équipe qui, autrement, aurait écrit les résultats des étapes ou suivi l'inventaire utilisé, peut désormais se concentrer sur des tâches spécifiques à son rôle, et non sur la saisie de données.

Voici comment nous prévoyons de mesurer l'impact lors de notre phase de test :

  1. Heures économisées grâce à notre assistant vocal
  2. Taux d'erreurs, en particulier avec les termes clés et les valeurs numériques
  3. Heures économisées par l'équipe de laboratoire dans le processus de gestion des stocks

Conclusion

Dans l'ensemble, nous avons réussi à mettre en place un pilote d'assistant vocal pour les scientifiques dans des laboratoires commerciaux. Lors de notre phase d'analyse, nous avons exploré divers modèles de reconnaissance vocale, car cela représentait un obstacle à la précision globale de notre application (l’élément clé étant une transcription de qualité, notamment pour les termes spécifiques, avec une faible latence). Nous avons exploité les appels de fonctions pour mieux gérer les requêtes traitement automatique des langues de nos utilisateurs et avons finalement collaboré avec notre équipe de design pour créer une interface conviviale permettant d’interagir avec l’assistant vocal.

Ce pilote illustre l’une des nombreuses façons dont les laboratoires commerciaux peuvent innover et améliorer leurs processus existants. Dans le paysage actuel de l'IA, il ne fait aucun doute que de nombreux processus répétitifs peuvent non seulement être automatisés, mais également réalisés de manière intelligente, mettant ainsi la puissance des données à la portée des scientifiques.

Pour aller plus loin

Vous souhaitez discuter de la manière dont des applications personnalisées et alimentées par l'IA peuvent augmenter l'efficacité de vos flux de travail ? Contactez-nous, nous sommes à l’écoute et avons hâte de discuter avec vous.

Cet article vous a donné des idées ? Nous serions ravis de travailler avec vous ! Contactez-nous et découvrons ce que nous pouvons faire ensemble.

Contactez-nous
Button Arrow