This may not be an llm issue, but could have to do with the interaction of the plugin mechanism with python packaging tooling.
I have llm installed (on MacOS) via uv tool install llm. When I update llm with uv tool upgrade llm, it forgets about all of its installed plugins:
~ > llm plugins
[
{
"name": "llm-claude-3",
"hooks": [
"register_models"
],
"version": "0.4.1"
},
{
"name": "llm-llamafile",
"hooks": [
"register_models"
],
"version": "0.1"
},
{
"name": "llm-perplexity",
"hooks": [
"register_models"
],
"version": "0.9"
},
{
"name": "llm-ollama",
"hooks": [
"register_commands",
"register_models"
],
"version": "0.5.0"
},
{
"name": "llm-cmd",
"hooks": [
"register_commands"
],
"version": "0.2a0"
},
{
"name": "llm-claude",
"hooks": [
"register_models"
],
"version": "0.4.0"
},
{
"name": "llm-mistral",
"hooks": [
"register_commands",
"register_embedding_models",
"register_models"
],
"version": "0.5"
}
]
Now I update:
~ > uv tool upgrade llm
Modified llm environment
- anthropic==0.34.2
- charset-normalizer==3.3.2
- filelock==3.16.0
- fsspec==2024.9.0
- httpx-sse==0.4.0
- huggingface-hub==0.24.7
- llm-claude==0.4.0
- llm-claude-3==0.4.1
- llm-cmd==0.2a0
- llm-llamafile==0.1
- llm-mistral==0.5
- llm-ollama==0.5.0
- llm-perplexity==0.9
- ollama==0.3.3
- packaging==24.1
- prompt-toolkit==3.0.47
- pygments==2.18.0
- requests==2.32.3
- tokenizers==0.20.0
- urllib3==2.2.3
- wcwidth==0.2.13
Now, no more plugins
Having saved the JSON of plugins, I can re-install them, and it appears that everything is installed from the cache. Is this because llm install is using pip or something similar, and uv handles things differently?
This may not be an
llmissue, but could have to do with the interaction of the plugin mechanism with python packaging tooling.I have
llminstalled (on MacOS) viauv tool install llm. When I update llm withuv tool upgrade llm, it forgets about all of its installed plugins:Now I update:
Now, no more plugins
Having saved the JSON of plugins, I can re-install them, and it appears that everything is installed from the cache. Is this because
llm installis usingpipor something similar, anduvhandles things differently?