Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Utiliser un LLM local plutôt que OPENAI ? #1

Open
pokyah opened this issue Oct 29, 2024 · 6 comments
Open

Utiliser un LLM local plutôt que OPENAI ? #1

pokyah opened this issue Oct 29, 2024 · 6 comments

Comments

@pokyah
Copy link

pokyah commented Oct 29, 2024

Bonjour @stephanedebove,

Je cherche à répliquer votre projet en utilisant un LLM installé en local plutôt que de faire appel à OPENAI. Une idée de la meilleure façon d'y parvenir ?

Cordialement

@GabrielMPhi
Copy link

C'est assez facile en fait. Llamaindex a la capacité de connecter avec Ollama et le tout se fait avec 2-3 lignes de codes.

Je ne peux pas répondre pour Stéphane, mais un ami et moi avons chacun fait une version avec d'autres LLM, notamment avec des llms locales via Ollama. Celui de mon camarade : https://github.com/isingasimplesong/local-knowledge-assistant est vraiment profond tandisque le mien est vraiment plus simple et ne fait que prendre une version simplifiée de ce que propose Stéphane en changeant le llm pour Ollama et les modèles locaux.

@pokyah
Copy link
Author

pokyah commented Oct 30, 2024

C'est assez facile en fait. Llamaindex a la capacité de connecter avec Ollama et le tout se fait avec 2-3 lignes de codes.

Je ne peux pas répondre pour Stéphane, mais un ami et moi avons chacun fait une version avec d'autres LLM, notamment avec des llms locales via Ollama. Celui de mon camarade : https://github.com/isingasimplesong/local-knowledge-assistant est vraiment profond tandisque le mien est vraiment plus simple et ne fait que prendre une version simplifiée de ce que propose Stéphane en changeant le llm pour Ollama et les modèles locaux.

Excellent ! Merci @GabrielMPhi. Je vais tester tout de suite

@stephanedebove
Copy link
Owner

oui c’est ça, ya trois lignes de code à changer pour passer d’openai à ollama par exemple:

https://docs.llamaindex.ai/en/stable/examples/llm/ollama/

@pokyah
Copy link
Author

pokyah commented Nov 4, 2024

Super !

Me reste une question. Je file à mon LLM une série de documens sur une thématique bien particulère. Comment puis-je être certain que les réponses qu'il va me fournir sont bien formulées à partir bien de ce registre de données et pas de la base de données sur laquelle in a été originellement entrainé ?

On peut bien faire quelques tests manuels mais j'aimerais savoir quelle est le degrés de confiance que je pourrai attribuer à ses réponses.

Merci pour vos éclaircissements

@stephanedebove
Copy link
Owner

Le plus simple est d’utiliser un LLM qui obéit bien aux instructions. Tu lui dis de dire "je sais pas" si la réponse ne se trouve pas dans le contexte, et tu lui poses une vingtaine de questions qui n’ont rien à voir avec tes documents, pour voir comment il se comporte.

Tu peux aussi lui demander d’afficher les noeuds (morceaux de docs) qui lui ont été donnés pour écrire sa réponse, comme ça quand tu as un doute tu peux vérifier manuellement si la réponse à ta question se trouve effectivement dans tes docs.

Mais si tu veux réellement quantifier une confiance, il va falloir faire de l’évaluation. Llamaindex fournit des outils pour faciliter ça (https://docs.llamaindex.ai/en/stable/module_guides/evaluating/), mais là on n’est plus dans l’application RAG de base. Typiquement, ça consiste à envoyer les noeuds et la réponse du LLM à un autre LLM, et demander à cet autre LLM si les noeuds contenaient la réponse. Donc on évalue le LLM par un autre LLM (plus puissant).

Si tu continues à construire une appli plus compliquée hésite pas à aller poser des questions sur le Discord de llamaindex, c’est eux les pros et normalement ils répondent assez vite.

@pokyah
Copy link
Author

pokyah commented Nov 4, 2024

Merci @stephanedebove,

J'ai pu faire quelques tests qui m'ont rassurés avec le fait que le chatbot puisse fournir ses sources !

Petit retour sur mes pérégrinations. J'ai bien réussi à faire tourner l'app avec un modèle local sur un laptop sans gpu mais c'est archi lent. Je vais encore creuser la possibilité en tentant d'optmiser quelques trucs.

En attendant j'ai essayé via l'API de huggingface qui permet d'utiliser d'autres modèles que openAI dans le cloud. Prix beaucoup plus avantageux. Ca marche mais je dois encore comprendre comment augmenter la longueur des réponses fournies car elles semblent tronquées.

Je partagerai mon code une fois qu'il sera un peu plus propre et documenté

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants