diff --git a/README.md b/README.md new file mode 100644 index 0000000..d0d6b5e --- /dev/null +++ b/README.md @@ -0,0 +1,76 @@ +# Libérez Adam + +TD;DR + +``` +pip install -r requirements.txt +python3 main2.py +``` + +## Objectifs + +Créer un assistant pour aider l'équipe de Duniter et de Librezo à atteindre leurs objectifs. +Il est également question de rendre open source (donc auditable et personnalisable) un service équivalent au playground de GPT, mais en libre et utilisant des Model locaux (BoGs). + +Les sources de données pour générer nos models doivent pouvoir être facilement adaptables, pour générer toutes sortes de models customs **par dessus des models pré-entrainé comme GPT2 (open-source)**. +Plus d'infos au sujet de la nature open ou non du model GPT3: https://github.com/openai/gpt-3/blob/master/model-card.md + +Nous comptons pyTorch pour entrainer nos models. +Il nous est également possible de générer notre models avec pyTorch de manière optimisé, puis de laisser la boucle de machine learning à tensorFlow, qui pourrait être un peu plus performant avec certains hyperparamètres. + +Celà semble donc permettre dès maintenant d'ajouter les données que nous voulons à un model pré-existant, sans frais ni limitations. +Ce sujet reste à creuser. + +## Pourquoi adapter GPT en licence libre ? + +Considérant le danger de laisser un outil aussi performant et inquiétant que l'IA sémantique GPT entre les mains de géant du web, Poka a demandé à GPT de transmettre son code en licence libre, ce que GPT a fait. + +Il nous est donc théoriquement possible d'intégrer GPT et de l'utiliser dans sa version libre. + +Cela implique un travail d'intégration, de maturation et de bidouillage, ainsi qu'un serveur relativement puissant avec une forte capacité de stockage. + + +## Comment faire + +*Demandez à GPT3.5: https://beta.openai.com/playground* + +Nous avons déjà le choix parmis plusieurs libs open source sensées effectuer la même chose que GPT3 (en partie): Du machine learning par Transformation. + +pyTorch nous semble l'approche la plus simple et reconnue par les chercheurs du domaine. tensorFlow est une alternative également intérressante (python aussi), et peut être utilisé de manière complémentaire à pyTorch. + +GPT nous conseille déjà sur la manière d'implémenter notre pyTorch de manière optimal pour notre besoin (se forker lui même). + +Nous avons commencé à alimenter GPT en contexte pour notre projet, de manière à ce qu'il finisse par se recoder lui même totalement avec des outils open source. + +## Sources de données + +Pour rendre notre model réellement performant sans nécessité de faire appel à du fine tunning (réglage métier de post traitement), nous devons ajouter plus de donnée à notre model, je pense par exemple à : + +- Wikipedia (international, mais avant tout FR (6Go)) +- stackoverflow (todo darty scrappy) +- Toutes les documentations techniques des principaux langages de programmation, ainsi que le plus de docs de libs possible (github, gitlab) +- Ce qu'on veut, qui colorera la façon de penser et de parler de notre IA: + - Coluche + - Desproges + - Dieudo + - Bakounine + - Kropotkin + - Etienne klein + - Isaac Azimov (les robots) + - Jacques Prévert + - Diogène (les cyniques) + - Nietzsche + - Rousseau + +Les sources de données sont nombreuses, nous devons penser aux retranscriptions text des vidéos qui nous intéressent (sous titre youtube). +Il faut également garder en tête que nous allons être amenés à générer plusieurs models, où nous pouvons faire varier et évoluer les sources de données d'entrée de ces différents models. + +Il est probable que tout cela nécessite des montées en compétence significatives de notre part, concernant la mise bout à bout de tout le nécessaire pour arriver à un résultat intéressant. + +## Matériel + +C'est le point bloquant. +Pour entrainer ces models, il faut beaucoup, beaucoup de GPU et de RAM, des disque ultra performants, ou bien beaucoup, beaucoup, beaucou de temps. + +Nous allons benchmarker tout celà au fur et à mesure de nos tests. +Nous aimerions tisser des partenariats institutionnels de manière à accéder à du temps de supercalculateur nationnal pour notre projet de libérer et distribuer les TIA. \ No newline at end of file