resource_providers
Class info¶
Classes¶
Name | Children | Inherits |
---|---|---|
CallableResourceProvider llmling_agent.resource_providers.callable_provider Wraps callables as a resource provider. |
||
ResourceProvider llmling_agent.resource_providers.base Base class for resource providers. |
🛈 DocStrings¶
Resource provider implementations.
CallableResourceProvider
¶
Bases: ResourceProvider
Wraps callables as a resource provider.
Handles both sync and async functions transparently.
Source code in src/llmling_agent/resource_providers/callable_provider.py
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
|
__init__
¶
__init__(
name: str = "callable",
tool_callable: ResourceCallable[list[ToolInfo]] | None = None,
prompt_callable: ResourceCallable[list[BasePrompt]] | None = None,
resource_callable: ResourceCallable[list[ResourceInfo]] | None = None,
)
Initialize provider with optional callables.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Name of the provider |
'callable'
|
tool_callable
|
ResourceCallable[list[ToolInfo]] | None
|
Function providing tools |
None
|
prompt_callable
|
ResourceCallable[list[BasePrompt]] | None
|
Function providing prompts |
None
|
resource_callable
|
ResourceCallable[list[ResourceInfo]] | None
|
Function providing resources |
None
|
Each callable can be sync or async.
Source code in src/llmling_agent/resource_providers/callable_provider.py
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
|
_call_provider
async
¶
_call_provider(provider: ResourceCallable[T] | None, default: T) -> T
Helper to handle sync/async provider calls.
Source code in src/llmling_agent/resource_providers/callable_provider.py
51 52 53 54 55 56 57 58 59 |
|
get_prompts
async
¶
get_prompts() -> list[BasePrompt]
Get prompts from callable if provided.
Source code in src/llmling_agent/resource_providers/callable_provider.py
65 66 67 |
|
get_resources
async
¶
get_resources() -> list[ResourceInfo]
Get resources from callable if provided.
Source code in src/llmling_agent/resource_providers/callable_provider.py
69 70 71 |
|
get_tools
async
¶
Get tools from callable if provided.
Source code in src/llmling_agent/resource_providers/callable_provider.py
61 62 63 |
|
ResourceProvider
¶
Base class for resource providers.
Provides tools, prompts, and other resources to agents. Default implementations return empty lists - override as needed.
Source code in src/llmling_agent/resource_providers/base.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
|
__aenter__
async
¶
__aenter__() -> Self
Async context entry if required.
Source code in src/llmling_agent/resource_providers/base.py
28 29 30 |
|
__aexit__
async
¶
__aexit__(*exc: object) -> None
Async context cleanup if required.
Source code in src/llmling_agent/resource_providers/base.py
32 33 |
|
__init__
¶
Initialize the resource provider.
Source code in src/llmling_agent/resource_providers/base.py
23 24 25 26 |
|
get_formatted_prompt
async
¶
Get a prompt formatted with arguments.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Name of the prompt to format |
required |
arguments
|
dict[str, str] | None
|
Optional arguments for prompt formatting |
None
|
Returns:
Type | Description |
---|---|
ChatMessage[str]
|
Single chat message with merged content |
Raises:
Type | Description |
---|---|
KeyError
|
If prompt not found |
ValueError
|
If formatting fails |
Source code in src/llmling_agent/resource_providers/base.py
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
|
get_prompts
async
¶
get_prompts() -> list[BasePrompt]
Get available prompts. Override to provide prompts.
Source code in src/llmling_agent/resource_providers/base.py
46 47 48 |
|
get_resources
async
¶
get_resources() -> list[ResourceInfo]
Get available resources. Override to provide resources.
Source code in src/llmling_agent/resource_providers/base.py
50 51 52 |
|