Weekly Shaarli

All links of one week in a single page.

Week 48 (November 25, 2024)

Azure AI Agent Service: Revolutionizing AI Agent Development and Deployment
thumbnail

Microsoft sort son un écosystème d'exécution d'Agents.

Vu le catalogue de Microsoft, c'est assez énorme avec plus de 1400 "connecteurs" (comprendre "API") disponibles sur étagère pour interagir avec les services Microsoft mais aussi des services externes comme Gmail, Twilio, MongoDB.

Ils ont aussi pas mal de choses assez exclusives sur étagère:

  • un Code Interpreter Python
  • recherche web avec Bing
  • des jeux de données privés comme celui de Tripadvisor par exemple
  • un moteur de conversation intégré

Bref, dans l'environnement Azure/Microsoft il y a toute une toolbox pour développer

Github Models Marketplace
thumbnail

Github continue à copier HuggingFace avec une plateforme d'hébergement de modèles d'IA (surtout des LLMs pour l'instant).

On y retrouve les modèles d'OpenAI hébergés sur Azure, les modèles Open Source de la famille LlaMa et Mistral, quelques modèles exotiques et bien sur les modèles de Microsoft de la famille Phi.

Les modèles sont utilisables dans un Playground similaire à celui d'OpenAI et utilisable via une API d'inférence managée.

Mistral Small - OUTSCALE
thumbnail

Outscale est un fournisseur de cloud agréé SecNumCloud et HDS et ils proposent maintenant un service managé d'inférence avec le modèle Mistral 1.5 Small !

Ça veut dire qu'il est possible d'utiliser un LLM 100% souverain avec des données sensibles et mêmes des données de santé

What We’ve Learned From A Year of Building with LLMs
thumbnail

Un guide qui résume beaucoup de choses en provenance de retours d'expérience sur l'utilisation des LLMs.

C'est un très bon résumé à lire pour se faire une idée des principaux défis et techniques utilisées pour faire des applications avec des LLMs !

Does Prompt Formatting Have Any Impact on LLM Performance?

Encore une étude sur les impact du prompt et du format de réponse sur la qualité de la génération.

Ils ont notamment testé les performances de génération en plusieurs formats de sortie:

  • JSON (0.77)
  • YAML (0.7)
  • text (0.69)
  • Markdown (0.35)

Dommage qu'ils n'aient pas inclus XML. (et j'ai vérifié cette fois, les prompts sont les mêmes entre chaque format)

Une autre conclusion est que le modèle GPT 3.5 est plus sensible aux variations de prompt que GPT 4.

C'est quelque chose que je remarque aussi, plus un modèle est performant et moins il est sensible aux subtilités du Prompt Engineering.

Bolt.new System Prompt
thumbnail

Le prompt système de Bolt est disponible sur Github et donne pas mal d'info sur la manière dont est organisé leur système:

  • création/édition de code avec des GNU diff
  • ça tourne dans des WebContainers
  • ils contournent la limite de 8K tokens en output avec leur CONTINUE_PROMPT

Surtout je vois que tout est au format XML (ils utilisent Claude 3.5 Sonnet) plutôt que JSON.

J'aimerais bien savoir pourquoi, sachant que j'avais remarqué que le format XML présentait de meilleures performances de génération que le JSON il y a un an. Je me demande si ils sont arrivés aux mêmes conclusions.

Sommet pour l’action sur l’IA 2025 | Direction générale des Entreprises

L'État français lance un appel aux entreprises françaises qui innovent dans l'IA pour être valorisé lors du Sommet pour l'action sur l'IA qui se déroulera les 10 et 11 févriers 2025.

..., we are launching the "AI for Efficiency" Call for AI Projects. This initiative seeks to gather success stories from companies and organizations that have implemented AI to drive productivity, innovation, or competitiveness.

Laureate projects from this initiative will be highlighted at the AI Action Summit, offering increased visibility and recognition among AI leaders.

Cela concerne les projets ayant dépassé la phase du pilote:

The project should have successfully completed the pilot phase, with available impact metrics, and be in the process of industrializing or already scaling

A vos dossiers !

Model Context Protocol - Anthropic

Anthropic propose un standard pour permettre aux LLMs de contrôler votre poste de travail en réalisant des actions.

Le Model Context Protocol permet d'exposer des outils à un LLM afin que celui-ci se comporte comme un Agent et les utilisent pour mener à bien les tâches demandées.

Exemple du serveur Postgres qui expose des commandes pour demander le schéma des tables de la base de données ou pour exécuter une requête.

Anthropic a déjà développé quelques serveurs:

  • système de fichiers (pour écrire/lire n'importe quel fichier)
  • Git (pour manipuler votre repository de code)
  • Postgres/SQLite (pour rechercher dans vos bases de données locales)
  • Puppeteer (pour contrôler le navigateur)

La liste complète est sur Github

C'est un pas en avant vers plus d'interactions en les application LLMs type Claude ou ChatGPT et nos ordinateurs.

D'un côté c'est excitant car ça ouvre pleins de possibilités et d'un autre côté j'aurais tendance à être prudent sur les actions que je permet à un LLM sur mon ordinateur (J'attends les posts du style "My LLM executed rm -rf /" sur Reddit)

Say What You Mean: A Response to 'Let Me Speak Freely'

Les gens de chez .txt (ce qui font Outlines) ont pris le temps de réfuter l'étude Let Me Speak Freely qui annonçait des performances moindre lorsque l'on utilisait un format contraint comme JSON.

Leurs résultats montrent que la génération structuré améliore un peu la performance de génération (ils ont utilisés les mêmes benchmark que l"étude)

Les erreurs faites dans l'étude:

  • certains de leurs résultats présentaient déjà de meilleures performances en génération structurée
  • les prompts n'étaient pas les mêmes entre génération structurée et non structurée
  • le parsing des outputs était réalisé avec un autre LLM ce qui faussait les résultats

An apt analogy would be to programming language benchmarking: it would be easy to write a paper showing that Rust performs worse than Python simply by writting terrible Rust code.

Finalement c'est plutôt rassurant car il est difficile de se passer de la génération structurée aujourd'hui.

A noter qu'il faut bien faire la différence entre

  • génération structurée: JSON-mode d'OpenAI ou lib Outlines qui garantissent le schéma des données en sortie
  • génération JSON: on génère du JSON et on vérifie qu'il correspond à un schéma
GitHub Copilot code review in GitHub.com (public preview)
thumbnail

Github apporte les suggestions IA de Copilot directement dans l'interface de revue de Pull Request !

Dans le même genre, il y a Code Rabbit mais honnêtement la qualité des reviews n'était pas à la hauteur, avec beaucoup de faux positifs et de "bruits" qui nous ont fait abandonné l'outil au final.

A voir si Github Copilot sera meilleur

QwQ: Reflect Deeply on the Boundaries of the Unknown

Alibaba annonce une nouvelle version de son modèle Qwen (QwQ-32B-Preview) qui dépasserait les performances de Claude 3.5 Sonnet sur certains benchmarks.

Ces résultats sont à prendre avec des pincettes car je remarque que par exemple ils ont pris des résultats de LiveCodeBench qui datent d'août et les scores des autres modèles se sont améliorés depuis.

Par contre sa fenêtre de contexte n'est que de 32 768 tokens donc c'est peu comparé à ce qui se fait dans l'industrie actuellement.

Sinon le modèle et ses poids sont sous licence Apache 2 donc ça reste quand même un très bon modèle Open Source !

Comment Microsoft utilise vos documents Word et Excel pour entraîner ses modèles d'IA
thumbnail

Microsoft a modifié ses clauses légales pour pouvoir s'approprier les droits sur le contenu de vos documents pour améliorer leurs services et sûrement aider à l'entraînement de modèles d'IA.

"une licence de propriété intellectuelle mondiale et libre de droits pour utiliser votre contenu".

Pour désactiver ça, il faut aller au fond de 7 menus et décocher une case cochée par défaut !

Quand je pense aux DSI de certaines entreprises qui ont du mal à accepter d'envoyer des parties de leurs documents aux API d'OpenAI mais qui utilisent tous les outils Microsoft ça me fait doucement rigoler 😄