janito 2.9.0__py3-none-any.whl → 2.12.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- janito/README.md +149 -0
- janito/cli/chat_mode/script_runner.py +2 -2
- janito/cli/chat_mode/session.py +9 -0
- janito/cli/core/model_guesser.py +51 -0
- janito/cli/core/runner.py +13 -1
- janito/cli/main_cli.py +8 -1
- janito/docs/GETTING_STARTED.md +117 -0
- janito/drivers/azure_openai/driver.py +7 -0
- janito/drivers/openai/driver.py +10 -2
- janito/drivers/zai/__init__.py +1 -0
- janito/drivers/zai/driver.py +465 -0
- janito/mkdocs.yml +40 -0
- janito/provider_registry.py +14 -4
- janito/providers/__init__.py +2 -1
- janito/providers/alibaba/__init__.py +0 -0
- janito/providers/alibaba/model_info.py +40 -0
- janito/providers/alibaba/provider.py +102 -0
- janito/providers/anthropic/provider.py +6 -0
- janito/providers/azure_openai/provider.py +6 -0
- janito/providers/deepseek/provider.py +6 -0
- janito/providers/google/provider.py +6 -0
- janito/providers/moonshotai/model_info.py +11 -0
- janito/providers/moonshotai/provider.py +7 -1
- janito/providers/openai/provider.py +6 -0
- janito/providers/zai/__init__.py +1 -0
- janito/providers/zai/model_info.py +55 -0
- janito/providers/zai/provider.py +128 -0
- janito/providers/zai/schema_generator.py +133 -0
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/METADATA +1 -1
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/RECORD +34 -24
- janito/providers/groq/__init__.py +0 -1
- janito/providers/groq/model_info.py +0 -45
- janito/providers/groq/provider.py +0 -76
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/WHEEL +0 -0
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/entry_points.txt +0 -0
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/licenses/LICENSE +0 -0
- {janito-2.9.0.dist-info → janito-2.12.0.dist-info}/top_level.txt +0 -0
@@ -1,76 +0,0 @@
|
|
1
|
-
from janito.llm.provider import LLMProvider
|
2
|
-
from janito.llm.model import LLMModelInfo
|
3
|
-
from janito.llm.auth import LLMAuthManager
|
4
|
-
from janito.llm.driver_config import LLMDriverConfig
|
5
|
-
from janito.drivers.openai.driver import OpenAIModelDriver
|
6
|
-
from janito.tools import get_local_tools_adapter
|
7
|
-
from janito.providers.registry import LLMProviderRegistry
|
8
|
-
from .model_info import MODEL_SPECS
|
9
|
-
from queue import Queue
|
10
|
-
|
11
|
-
available = OpenAIModelDriver.available
|
12
|
-
unavailable_reason = OpenAIModelDriver.unavailable_reason
|
13
|
-
|
14
|
-
|
15
|
-
class GroqProvider(LLMProvider):
|
16
|
-
name = "groq"
|
17
|
-
NAME = "groq"
|
18
|
-
MAINTAINER = "Groq Inc. <support@groq.com>"
|
19
|
-
MODEL_SPECS = MODEL_SPECS
|
20
|
-
DEFAULT_MODEL = "moonshotai/kimi-k2-instruct"
|
21
|
-
|
22
|
-
def __init__(
|
23
|
-
self, auth_manager: LLMAuthManager = None, config: LLMDriverConfig = None
|
24
|
-
):
|
25
|
-
if not self.available:
|
26
|
-
self._tools_adapter = get_local_tools_adapter()
|
27
|
-
self._driver = None
|
28
|
-
else:
|
29
|
-
self.auth_manager = auth_manager or LLMAuthManager()
|
30
|
-
self._api_key = self.auth_manager.get_credentials(type(self).NAME)
|
31
|
-
self._tools_adapter = get_local_tools_adapter()
|
32
|
-
self._driver_config = config or LLMDriverConfig(model=self.DEFAULT_MODEL)
|
33
|
-
if not self._driver_config.model:
|
34
|
-
self._driver_config.model = self.DEFAULT_MODEL
|
35
|
-
|
36
|
-
if not self._driver_config.api_key:
|
37
|
-
self._driver_config.api_key = self._api_key
|
38
|
-
self._driver_config.base_url = "https://api.groq.com/openai/v1"
|
39
|
-
self.fill_missing_device_info(self._driver_config)
|
40
|
-
self._driver = None
|
41
|
-
|
42
|
-
@property
|
43
|
-
def driver(self) -> OpenAIModelDriver:
|
44
|
-
if not self.available:
|
45
|
-
raise ImportError(f"GroqProvider unavailable: {self.unavailable_reason}")
|
46
|
-
return self._driver
|
47
|
-
|
48
|
-
@property
|
49
|
-
def available(self):
|
50
|
-
return available
|
51
|
-
|
52
|
-
@property
|
53
|
-
def unavailable_reason(self):
|
54
|
-
return unavailable_reason
|
55
|
-
|
56
|
-
def create_driver(self):
|
57
|
-
driver = OpenAIModelDriver(
|
58
|
-
tools_adapter=self._tools_adapter, provider_name=self.NAME
|
59
|
-
)
|
60
|
-
driver.config = self._driver_config
|
61
|
-
return driver
|
62
|
-
|
63
|
-
@property
|
64
|
-
def model_name(self):
|
65
|
-
return self._driver_config.model
|
66
|
-
|
67
|
-
@property
|
68
|
-
def driver_config(self):
|
69
|
-
return self._driver_config
|
70
|
-
|
71
|
-
def execute_tool(self, tool_name: str, event_bus, *args, **kwargs):
|
72
|
-
self._tools_adapter.event_bus = event_bus
|
73
|
-
return self._tools_adapter.execute_by_name(tool_name, *args, **kwargs)
|
74
|
-
|
75
|
-
|
76
|
-
LLMProviderRegistry.register(GroqProvider.NAME, GroqProvider)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|