HeadlinesBriefing favicon HeadlinesBriefing.com

Imp : Cadre auto-améliorable pour modèles de langue Elixir

Hacker News •
×

Imp est un cadre de programmation déclaratif, auto-améliorable pour les modèles de langue pour Elixir, un port complet de DSPy sur BEAM. Il permet aux développeurs de décrire les étapes des modèles de langue et les valeurs de retour, de choisir des stratégies de raisonnement, et d'optimiser des programmes contre des exemples étiquetés en utilisant la fiabilité et la concurrence d'OTP.

Les développeurs définissent des signatures typées comme "issue -> kind: enum[bug,feature,question], summary" et les appellent avec Imp.predict/2. Le cadre construit des invites depuis les signatures, valide les réponses, et retourne des champs typés. La chaîne de raisonnement et l'utilisation d'outils sont supportées via Imp.chain_of_thought/2 et Imp.react/3 sans modification des signatures.

L'optimisation utilise des ensembles de données étiquetés (trainset, valset, testset) avec des métriques. GEPA, un LM puissant, lit les échecs et réécrit les instructions. Les autres optimisateurs incluent Labeled Few Shot, Bootstrap Few Shot, MIPROv2, SIMBA et le fine-tuning avec GRPO.

Les agents s'exécutent comme des processus OTP supervisés avec Imp.start_run/3, permettant la surveillance et les contrôles d'autorisation. Les outils sont des fonctions Elixir ordinaires enveloppées avec Imp.tool/3. Le cadre dépend de Req pour les appels HTTP.

Imp permet de construire depuis des appels typés uniques jusqu'aux agents à exécution longue, améliorant chaque composant à travers la mesure et l'optimisation tout en maintenant les garanties de tolérance aux pannes et de concurrence d'Elixir.