mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-07-26 22:19:49 +00:00
using `module` in the provider class and the fact that `build` and `run` configs BOTH use the `class Provider` now, enables us to point to an external provider via a `module`. For example, say this is in your build config: ``` - provider_id: ramalama provider_type: remote::ramalama module: ramalama_stack ``` during build (in the various scripts), additionally to installing any pip dependencies we will also install this module and use the `get_provider_spec` method to retreive the ProviderSpec that is currently specified using `providers.d`. Most (if not all) external providers today have a `get_provider_spec` method that sits unused. Utilizing this method rather than the providers.d route allows for a much easier installation process for external providers and limits the amount of extra configuration a regular user has to do to get their stack off the ground. In production so far, providing instructions for installing external providers for users has been difficult: they need to install the module as a pre-req, create the providers.d directory, copy in the provider spec, and also copy in the necessary build/run yaml files. Using the module is a more seamless discovery method Signed-off-by: Charlie Doern <cdoern@redhat.com> |
||
---|---|---|
.. | ||
access_control | ||
routers | ||
routing_tables | ||
server | ||
store | ||
ui | ||
utils | ||
__init__.py | ||
build.py | ||
build_conda_env.sh | ||
build_container.sh | ||
build_venv.sh | ||
client.py | ||
common.sh | ||
configure.py | ||
datatypes.py | ||
distribution.py | ||
external.py | ||
inspect.py | ||
library_client.py | ||
providers.py | ||
request_headers.py | ||
resolver.py | ||
stack.py | ||
start_stack.sh |