janito 2.8.0__py3-none-any.whl → 2.10.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.
Files changed (38) hide show
  1. janito/README.md +149 -0
  2. janito/cli/chat_mode/script_runner.py +2 -2
  3. janito/cli/chat_mode/session.py +24 -6
  4. janito/cli/chat_mode/shell/commands/_priv_status.py +13 -0
  5. janito/cli/cli_commands/list_config.py +31 -0
  6. janito/cli/cli_commands/list_profiles.py +79 -0
  7. janito/cli/cli_commands/show_config.py +4 -11
  8. janito/cli/core/getters.py +14 -1
  9. janito/cli/main_cli.py +52 -3
  10. janito/config.py +1 -0
  11. janito/config_manager.py +11 -2
  12. janito/docs/GETTING_STARTED.md +117 -0
  13. janito/docs/PROVIDERS.md +224 -0
  14. janito/drivers/azure_openai/driver.py +7 -0
  15. janito/drivers/openai/driver.py +10 -2
  16. janito/llm/provider.py +1 -1
  17. janito/mkdocs.yml +40 -0
  18. janito/provider_registry.py +14 -4
  19. janito/providers/__init__.py +1 -1
  20. janito/providers/alibaba/__init__.py +0 -0
  21. janito/providers/alibaba/model_info.py +33 -0
  22. janito/providers/alibaba/provider.py +102 -0
  23. janito/providers/anthropic/provider.py +6 -0
  24. janito/providers/azure_openai/provider.py +8 -2
  25. janito/providers/deepseek/provider.py +7 -1
  26. janito/providers/google/provider.py +7 -1
  27. janito/providers/moonshotai/model_info.py +11 -0
  28. janito/providers/moonshotai/provider.py +8 -2
  29. janito/providers/openai/provider.py +7 -1
  30. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/METADATA +8 -8
  31. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/RECORD +35 -28
  32. janito/providers/groq/__init__.py +0 -1
  33. janito/providers/groq/model_info.py +0 -46
  34. janito/providers/groq/provider.py +0 -76
  35. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/WHEEL +0 -0
  36. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/entry_points.txt +0 -0
  37. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/licenses/LICENSE +0 -0
  38. {janito-2.8.0.dist-info → janito-2.10.0.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: janito
3
- Version: 2.8.0
3
+ Version: 2.10.0
4
4
  Summary: A new Python package called janito.
5
- Author-email: João Pinto <lamego.pinto@gmail.com>
6
- Project-URL: Homepage, https://github.com/janito-dev/janito
5
+ Author-email: João Pinto <janito@ikignosis.org>
6
+ Project-URL: Homepage, https://github.com/ikignosis/janito
7
7
  Requires-Python: >=3.7
8
8
  Description-Content-Type: text/markdown
9
9
  License-File: LICENSE
@@ -30,7 +30,7 @@ Requires-Dist: questionary>=2.0.1; extra == "dev"
30
30
  Requires-Dist: setuptools_scm>=8.0; extra == "dev"
31
31
  Dynamic: license-file
32
32
 
33
- # Janito
33
+ # Janito, control you context
34
34
 
35
35
  [![PyPI version](https://badge.fury.io/py/janito.svg)](https://badge.fury.io/py/janito)
36
36
 
@@ -39,7 +39,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
39
39
  ## Features
40
40
 
41
41
  - 🔑 Manage API keys and provider configurations
42
- - 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini, Mistral, DeepSeek, and more)
42
+ - 🤖 Interact with multiple LLM providers (OpenAI, Google Gemini, DeepSeek, and more)
43
43
  - 🛠️ List and use a variety of registered tools
44
44
  - 📝 Submit prompts and receive responses directly from the CLI
45
45
  - 📋 List available models for each provider
@@ -61,7 +61,7 @@ Janito is a command-line interface (CLI) tool for managing and interacting with
61
61
  Janito is a Python package. Since this is a development version, you can install it directly from GitHub:
62
62
 
63
63
  ```bash
64
- pip install git+https://github.com/janito-dev/janito.git
64
+ pip install git+git@github.com:ikignosis/janito.git
65
65
  ```
66
66
 
67
67
  ### First launch and quick setup
@@ -307,7 +307,7 @@ For more information, see the documentation in the `docs/` directory or run `jan
307
307
 
308
308
  ## 📖 Detailed Documentation
309
309
 
310
- Full and up-to-date documentation is available at: https://janito-dev.github.io/janito/
310
+ Full and up-to-date documentation is available at: https://ikignosis.github.io/janito/
311
311
 
312
312
  ---
313
313
 
@@ -388,7 +388,7 @@ janito -p deepseek --list-models
388
388
  ## Ask Me Anything
389
389
 
390
390
  <div align="center">
391
- <a href="https://github.com/janito-dev/janito" title="Ask Me Anything">
391
+ <a href="git@github.com:ikignosis/janito.git" title="Ask Me Anything">
392
392
  <img width="250" src="docs/imgs/ama.png" alt="Ask Me Anything">
393
393
  </a>
394
394
  </div
@@ -1,8 +1,9 @@
1
+ janito/README.md,sha256=uxjCeZVAsRh5lHLm-d5tWD2y42fr17tCrLsTvr-CR0Q,3557
1
2
  janito/__init__.py,sha256=a0pFui3A_AfWJiUfg93yE-Vf4868bqG3y9yg2fkTIuY,244
2
3
  janito/__main__.py,sha256=lPQ8kAyYfyeS1KopmJ8EVY5g1YswlIqCS615mM_B_rM,70
3
4
  janito/_version.py,sha256=PtAVr2K9fOS5sv6aXzmcb7UaR5NLGMFOofL7Ndjh75o,2344
4
- janito/config.py,sha256=HJh0CmZEx7AbMQOmFkiYHFNzc-fO7fqpZ9rh6RenxK8,201
5
- janito/config_manager.py,sha256=wu7hLCO_BvGijpILuLOr9x7zWOYk_qP4d9_XgbtM96k,5197
5
+ janito/config.py,sha256=DXuC74NEywKvpTkOSrrxJGvHdL_tvXEf27pkedV3XZA,313
6
+ janito/config_manager.py,sha256=KoA_jmJzCv33jzXGSab0x6JyWL0cExoqnltES9oT-JU,5433
6
7
  janito/conversation_history.py,sha256=GqqEJElTVONzOMRe-9g25WCMcDi0PF7DOnqGWLTrY_8,897
7
8
  janito/dir_walk_utils.py,sha256=ON9EyVH7Aaik8WtCH5z8DQis9ycdoNVkjNvU16HH498,1193
8
9
  janito/driver_events.py,sha256=51ab7KW_W6fVZVeO0ez-HJFY4NbTI327ZlEmEsEkxQc,3405
@@ -10,11 +11,12 @@ janito/exceptions.py,sha256=l4AepRdWwAuLp5fUygrBBgO9rpwgfV6JvY1afOdq2pw,913
10
11
  janito/formatting.py,sha256=SMvOmL6bst3KGcI7OLa5D4DE127fQYuHZS3oY8OPsn8,2031
11
12
  janito/formatting_token.py,sha256=9Pz0svhV0pyNuGRXSmVkGDaQC8N-koTkf50AJR_gtSo,2217
12
13
  janito/gitignore_utils.py,sha256=P3iF9fMWAomqULq2xsoqHtI9uNIFSPcagljrxZshmLw,4110
14
+ janito/mkdocs.yml,sha256=ve0ipJDpOpetaVOtzJf2oSSCx441r1FDMv0v6iSSxhk,920
13
15
  janito/perf_singleton.py,sha256=g1h0Sdf4ydzegeEpJlMhQt4H0GQZ2hryXrdYOTL-b30,113
14
16
  janito/performance_collector.py,sha256=RYu4av16Trj3RljJZ8-2Gbn1KlGdJUosrcVFYtwviNI,6285
15
17
  janito/platform_discovery.py,sha256=JN3kC7hkxdvuj-AyrJTlbbDJjtNHke3fdlZDqGi_uz0,4621
16
18
  janito/provider_config.py,sha256=acn2FEgWsEIyi2AxZiuCLoP2rXDd-nXcP5VB4CZHaeE,3189
17
- janito/provider_registry.py,sha256=n5fXiMoC1ye968-LLT_1VRt-iNIVDyKiDJkkn_EyfQQ,6049
19
+ janito/provider_registry.py,sha256=l0jJZ74KIebOSYXPiy7uqH8d48pckR_WTyAO4iQF98o,6571
18
20
  janito/report_events.py,sha256=q4OR_jTZNfcqaQF_fzTjgqo6_VlUIxSGWfhpT4nJWcw,938
19
21
  janito/shell.bak.zip,sha256=hznHbmgfkAkjuQDJ3w73XPQh05yrtUZQxLmtGbanbYU,22
20
22
  janito/utils.py,sha256=eXSsMgM69YyzahgCNrJQLcEbB8ssLI1MQqaa20ONxbE,376
@@ -26,7 +28,7 @@ janito/cli/__init__.py,sha256=xaPDOrWphBbCR63Xpcx_yfpXSJIlCaaICc4j2qpWqrM,194
26
28
  janito/cli/config.py,sha256=HkZ14701HzIqrvaNyDcDhGlVHfpX_uHlLp2rHmhRm_k,872
27
29
  janito/cli/console.py,sha256=gJolqzWL7jEPLxeuH-CwBDRFpXt976KdZOEAB2tdBDs,64
28
30
  janito/cli/main.py,sha256=s5odou0txf8pzTf1ADk2yV7T5m8B6cejJ81e7iu776U,312
29
- janito/cli/main_cli.py,sha256=i4wEZW3z85qt0d4SocKrn-3hzuEA-HSzMW3zTau6kwE,12545
31
+ janito/cli/main_cli.py,sha256=MAAQpD7VyGHveref4XtF7WDI6Qew81yA65lu23V2LYk,14182
30
32
  janito/cli/prompt_core.py,sha256=F68J4Xl6jZMYFN4oBBYZFj15Jp-HTYoLub4bw2XpNRU,11648
31
33
  janito/cli/prompt_handler.py,sha256=SnPTlL64noeAMGlI08VBDD5IDD8jlVMIYA4-fS8zVLg,215
32
34
  janito/cli/prompt_setup.py,sha256=1s5yccFaWMgDkUjkvnTYGEWJAFPJ6hIiqwbrLfzWxMI,2038
@@ -36,8 +38,8 @@ janito/cli/verbose_output.py,sha256=wY_B4of5e8Vv7w1fRwOZzNGU2JqbMdcFnGjtEr4hLus,
36
38
  janito/cli/chat_mode/bindings.py,sha256=odjc5_-YW1t2FRhBUNRNoBMoQIg5sMz3ktV7xG0ADFU,975
37
39
  janito/cli/chat_mode/chat_entry.py,sha256=RFdPd23jsA2DMHRacpjAdwI_1dFBaWrtnwyQEgb2fHA,475
38
40
  janito/cli/chat_mode/prompt_style.py,sha256=vsqQ9xxmrYjj1pWuVe9CayQf39fo2EIXrkKPkflSVn4,805
39
- janito/cli/chat_mode/script_runner.py,sha256=NzWHXNcf-jZZb096iFJJL2pi3kVb1beLSHHzqE5Sv2g,6500
40
- janito/cli/chat_mode/session.py,sha256=Wq4U_R_H9kPbToDEMZPdJJC-htVse4Pf1wM85otlwZ4,12249
41
+ janito/cli/chat_mode/script_runner.py,sha256=wOwEn4bgmjqHqjTqtfyaSOnRPsGf4ZVW-YAWhEeqxXU,6507
42
+ janito/cli/chat_mode/session.py,sha256=cqc4Ug3yGA8rR6vFRe5v6U4recqD0tzqgwcf2ASaPgs,12891
41
43
  janito/cli/chat_mode/session_profile_select.py,sha256=CJ2g3VbPGWfBNrNkYYX57oIJZJ-hIZBNGB-zcdjC9vk,5379
42
44
  janito/cli/chat_mode/toolbar.py,sha256=bJ9jPaTInp2gB3yjSVJp8mpNEFiOslzNhVaiqpXJhKc,3025
43
45
  janito/cli/chat_mode/shell/autocomplete.py,sha256=lE68MaVaodbA2VfUM0_YLqQVLBJAE_BJsd5cMtwuD-g,793
@@ -46,6 +48,7 @@ janito/cli/chat_mode/shell/input_history.py,sha256=9620dKYSpXfGhdd2msbuqnkNW3Drv
46
48
  janito/cli/chat_mode/shell/session.bak.zip,sha256=m1GyO3Wy4G4D9sVgRO6ZDyC0VjclsmnEJsiQoer4LzI,5789
47
49
  janito/cli/chat_mode/shell/commands/__init__.py,sha256=Ux4h86ewY9yR9xjaK6Zt2vOws3uCjMBmnMhOHLWS1BE,2302
48
50
  janito/cli/chat_mode/shell/commands/_priv_check.py,sha256=OBPRMZlFlLSJSfbXrLqRCqD3ISKqR0QNzBJpa7g30Ro,206
51
+ janito/cli/chat_mode/shell/commands/_priv_status.py,sha256=WgCEK38Hllz3Bz4TgVgODdmo0BDaBey5t0uMyA3125k,478
49
52
  janito/cli/chat_mode/shell/commands/bang.py,sha256=qVCUM8ZnGE1J3yG1hjYYw7upY4PR6bhNNYfJa-NfnI4,1860
50
53
  janito/cli/chat_mode/shell/commands/base.py,sha256=I6-SVOcRd7q4PpoutLdrbhbqeUpJic2oyPhOSMgMihA,288
51
54
  janito/cli/chat_mode/shell/commands/clear.py,sha256=wYEHGYcAohUoCJlbEhiXKfDbJvuzAVK4e9uirskIllw,422
@@ -69,28 +72,32 @@ janito/cli/chat_mode/shell/commands/write.py,sha256=bpvJzHY7wlpgsB-cpslzfQQl7h6n
69
72
  janito/cli/chat_mode/shell/session/__init__.py,sha256=uTYE_QpZFEn7v9QE5o1LdulpCWa9vmk0OsefbBGWg_c,37
70
73
  janito/cli/chat_mode/shell/session/history.py,sha256=tYav6GgjAZkvWhlI_rfG6OArNqW6Wn2DTv39Hb20QYc,1262
71
74
  janito/cli/chat_mode/shell/session/manager.py,sha256=MwD9reHsRaly0CyRB-S1JJ0wPKz2g8Xdj2VvlU35Hgc,1001
75
+ janito/cli/cli_commands/list_config.py,sha256=oiQEGaGPjwjG-PrOcakpNMbbqISTsBEs7rkGH3ceQsI,1179
72
76
  janito/cli/cli_commands/list_models.py,sha256=_rqHz89GsNLcH0GGkFqPue7ah4ZbN9YHm0lEP30Aa-A,1111
77
+ janito/cli/cli_commands/list_profiles.py,sha256=9-HV2EbtP2AdubbMoakjbu7Oq4Ss9UDyO7Eb6CC52wI,2681
73
78
  janito/cli/cli_commands/list_providers.py,sha256=v8OQ8ULnuzNuvgkeKqGXGj69eOiavAlPGhzfR0zavhg,185
74
79
  janito/cli/cli_commands/list_tools.py,sha256=JFRdlhPeA3BzhJ2PkjIt3u137IJoNc-vYSjUuPlaOXw,3593
75
80
  janito/cli/cli_commands/model_selection.py,sha256=ANWtwC5glZkGMdaNtARDbEG3QmuBUcDLVxzzC5jeBNo,1643
76
81
  janito/cli/cli_commands/model_utils.py,sha256=U0j2FTpcIBc4eAc40MXz5tyAK3m8lkakpOS2l2bGh4A,2868
77
82
  janito/cli/cli_commands/set_api_key.py,sha256=iPtWPhS5VeyIlwVX43TGg7OYUwXCcGzugvwoa3KB8A8,605
78
- janito/cli/cli_commands/show_config.py,sha256=ElXIucqBrB0-za9u78g1lRqYRZV9rArkywSzfQ0exqQ,2436
83
+ janito/cli/cli_commands/show_config.py,sha256=eYMcuvU-d7mvvuctbQacZFERqcKHEnxaRRjasyj-_lE,2004
79
84
  janito/cli/cli_commands/show_system_prompt.py,sha256=9ZJGW7lIGJ9LX2JZiWVEm4AbaD0qEQO7LF89jPgk52I,5232
80
85
  janito/cli/core/__init__.py,sha256=YH95fhgY9yBX8RgqX9dSrEkl4exjV0T4rbmJ6xUpG-Y,196
81
86
  janito/cli/core/event_logger.py,sha256=1X6lR0Ax7AgF8HlPWFoY5Ystuu7Bh4ooTo78vXzeGB0,2008
82
- janito/cli/core/getters.py,sha256=qHp4bLuEfy6Td52QRPkH95loQwy4ZOlwo6-JkA7dJrM,1471
87
+ janito/cli/core/getters.py,sha256=AO34OBhh3f1Sx2mWVYQIvH-4fcmXG7b2471XdKNZdYs,1856
83
88
  janito/cli/core/runner.py,sha256=C7eePvhzIYHgsP95WGwltIhM_T4Kzyo14M7n12RevPQ,7693
84
89
  janito/cli/core/setters.py,sha256=PD3aT1y1q8XWQVtRNfrU0dtlW4JGdn6BMJyP7FCQWhc,4623
85
90
  janito/cli/core/unsetters.py,sha256=FEw9gCt0vRvoCt0kRSNfVB2tzi_TqppJIx2nHPP59-k,2012
86
91
  janito/cli/single_shot_mode/__init__.py,sha256=Ct99pKe9tINzVW6oedZJfzfZQKWpXz-weSSCn0hrwHY,115
87
92
  janito/cli/single_shot_mode/handler.py,sha256=U70X7c9MHbmj1vQlTI-Ao2JvRprpLbPh9wL5gAMbEhs,3790
93
+ janito/docs/GETTING_STARTED.md,sha256=EbXV7B3XxjSy1E0XQJFOVITVbTmZBVB7pjth2Mb4_rg,2835
94
+ janito/docs/PROVIDERS.md,sha256=ZJK6A2j7uA651K5ypDnm-UQsnorCZvcU4qUrBPxpf0Y,4775
88
95
  janito/drivers/dashscope.bak.zip,sha256=9Pv4Xyciju8jO1lEMFVgYXexoZkxmDO3Ig6vw3ODfL8,4936
89
96
  janito/drivers/driver_registry.py,sha256=sbij7R71JJqJVeMfmaU-FKsEuZVO8oEn6Qp8020hdZw,773
90
97
  janito/drivers/openai_responses.bak.zip,sha256=E43eDCHGa2tCtdjzj_pMnWDdnsOZzj8BJTR5tJp8wcM,13352
91
- janito/drivers/azure_openai/driver.py,sha256=rxeyCElyc4XVCTl2q-tI78Oy0q5lwtQUnwBqw7vft5g,3593
98
+ janito/drivers/azure_openai/driver.py,sha256=rec2D4DDuMjdnbGNIsrnB0oiwuxL_zBykJeUGa-PffI,4074
92
99
  janito/drivers/openai/README.md,sha256=bgPdaYX0pyotCoJ9t3cJbYM-teQ_YM1DAFEKLCMP32Q,666
93
- janito/drivers/openai/driver.py,sha256=29mghReMzo6Ht17EcxgsZe6mvQyhMxx5n19ORfo_N5U,18326
100
+ janito/drivers/openai/driver.py,sha256=7KxJes82SNcuaTMFvG-Avv60FNjg9s3DiynTtocK6Ac,18947
94
101
  janito/event_bus/__init__.py,sha256=VG6GOhKMBh0O_92D-zW8a3YitJPKDajGgPiFezTXlNE,77
95
102
  janito/event_bus/bus.py,sha256=LokZbAdwcWhWOyKSp7H3Ism57x4EZhxlRPjl3NE4UKU,2847
96
103
  janito/event_bus/event.py,sha256=MtgcBPD7cvCuubiLIyo-BWcsNSO-941HLk6bScHTJtQ,427
@@ -109,29 +116,29 @@ janito/llm/driver_config_builder.py,sha256=BvWGx7vaBR5NyvPY1XNAP3lAgo1uf-T25CSsI
109
116
  janito/llm/driver_input.py,sha256=Zq7IO4KdQPUraeIo6XoOaRy1IdQAyYY15RQw4JU30uA,389
110
117
  janito/llm/message_parts.py,sha256=QY_0kDjaxdoErDgKPRPv1dNkkYJuXIBmHWNLiOEKAH4,1365
111
118
  janito/llm/model.py,sha256=42hjcffZDTuzjAJoVhDcDqwIXm6rUmmi5UwTOYopf5w,1131
112
- janito/llm/provider.py,sha256=lfIJnh06F0kf8--Pg_W7ALhkbIzn7N4iItQ93pntyuM,7978
113
- janito/providers/__init__.py,sha256=S6AvFABVrFOfFFj_sqNnQcbgS6IVdiRWzBg-rhnhjOY,366
119
+ janito/llm/provider.py,sha256=3FbhQPrWBSEoIdIi-5DWIh0DD_CM570EFf1NcuGyGko,7961
120
+ janito/providers/__init__.py,sha256=-FHm_JuCSNGVhF61k9wlzJFxDBnTIl9L28UngTeQVa0,369
114
121
  janito/providers/dashscope.bak.zip,sha256=BwXxRmZreEivvRtmqbr5BR62IFVlNjAf4y6DrF2BVJo,5998
115
122
  janito/providers/registry.py,sha256=Ygwv9eVrTXOKhv0EKxSWQXO5WMHvajWE2Q_Lc3p7dKo,730
123
+ janito/providers/alibaba/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
+ janito/providers/alibaba/model_info.py,sha256=oJOTw3yr6SuQItS9ZIAch2AtsKMosgZrdYygPhOSw9s,978
125
+ janito/providers/alibaba/provider.py,sha256=1sMp02WvtBJMjMtQjpBNUMh_nOsLfHxzz0gbuCCMjqA,4280
116
126
  janito/providers/anthropic/model_info.py,sha256=m6pBh0Ia8_xC1KZ7ke_4HeHIFw7nWjnYVItnRpkCSWc,1206
117
- janito/providers/anthropic/provider.py,sha256=nTsZw0IwAZbgixBNXuD7EYXdI6uYQh7wsTGxE-3R-yE,2850
127
+ janito/providers/anthropic/provider.py,sha256=JS74pDs7gSpwvG0jY-MDO5rljO0JJOffSjaL1LK1YlE,3165
118
128
  janito/providers/azure_openai/model_info.py,sha256=TMSqEpQROIIYUGAyulYJ5xGhj7CbLoaKL_JXeLbXaG0,689
119
- janito/providers/azure_openai/provider.py,sha256=7AmzfWiCSlKIs7w40FHW6BWSXO741HJfDNz4Nk6aMBo,5232
129
+ janito/providers/azure_openai/provider.py,sha256=lWqHI1JG5c2wl24qFVZwdIW3lBjDwrxAHwskjOGCeWQ,5546
120
130
  janito/providers/deepseek/__init__.py,sha256=4sISEpq4bJO29vxFK9cfnO-SRUmKoD7oSdeCvz0hVno,36
121
131
  janito/providers/deepseek/model_info.py,sha256=tAlFRtWiyNF_MKZ1gy5_-VNlvqoIwAinv6bAv9dNFsc,465
122
- janito/providers/deepseek/provider.py,sha256=3z8zlkRhSf-12EhhbeLqTiSaoMDgNUU2iymzT-fbe5Q,3924
132
+ janito/providers/deepseek/provider.py,sha256=I78wI27Kon4pyTZuO5knhvYejfE1xZysnr36fv_EolQ,4260
123
133
  janito/providers/google/__init__.py,sha256=hE3OGJvLEhvNLhIK_XmCGIdrIj8MKlyGgdOLJ4mdess,38
124
134
  janito/providers/google/model_info.py,sha256=AakTmzvWm1GPvFzGAq6-PeE_Dpq7BmAAqmh3L8N5KKo,1126
125
- janito/providers/google/provider.py,sha256=tlgjGdA7A9pF3vNKxZhmhsjQ_VQ_YVhzTKMauIZ_tkU,3426
126
- janito/providers/groq/__init__.py,sha256=O0vi5p13DGcDEM3SUQmYB5_g7-UcqT-d0OrrPIsaeD4,36
127
- janito/providers/groq/model_info.py,sha256=YQHskypHmIMEKVG5DfuLP1kiCfMyhPy0q-bqtq2gtOw,1663
128
- janito/providers/groq/provider.py,sha256=8xUMY_ytSauT5RX3yovS2sDtHX1rkqNwHAEClTaJ7Ls,2697
135
+ janito/providers/google/provider.py,sha256=4oEaaqFUlGKIw4yTd_0tVWdpAx3QDEIP6cRwmVKDp-I,3760
129
136
  janito/providers/moonshotai/__init__.py,sha256=nThTAtynq4O2Iidm95daKOCKXi5APRJYtRK2Wr3SDpM,31
130
- janito/providers/moonshotai/model_info.py,sha256=p5_q73Z5YnFbh9-_pXuHrug2DW-7G5Y_9U52dhsS11Q,396
131
- janito/providers/moonshotai/provider.py,sha256=ljQXg7t8QTiXbwFBftSR8MnX94m-R0HboUw2Jelt3YY,3645
137
+ janito/providers/moonshotai/model_info.py,sha256=MpPAB3tZVvZ8V7tZsiJpk5SReHjVcnwwbp63aUebx9Y,718
138
+ janito/providers/moonshotai/provider.py,sha256=e3tU6QSPwaquPqSzO4f1HTe3_4eOFB092CSzmoFU8QQ,3984
132
139
  janito/providers/openai/__init__.py,sha256=f0m16-sIqScjL9Mp4A0CQBZx6H3PTEy0cnE08jeaB5U,38
133
140
  janito/providers/openai/model_info.py,sha256=cz08O26Ychm-aP3T8guJRqpR96Im9Cwtgl2iMgM7tJs,3384
134
- janito/providers/openai/provider.py,sha256=UFRia7yZ6ZB56kLiiQFsQCyZtwV1kNTEIxjUxc_jNsY,4811
141
+ janito/providers/openai/provider.py,sha256=U9Bp9g2KQ58J6-B5vDgsXM05xASsgaWQOofewC7hiXs,5145
135
142
  janito/providers/openai/schema_generator.py,sha256=hTqeLcPTR8jeKn5DUUpo7b-EZ-V-g1WwXiX7MbHnFzE,2234
136
143
  janito/tools/DOCSTRING_STANDARD.txt,sha256=VLPwNgjxRVD_xZSSVvUZ4H-4bBwM-VKh_RyfzYQsYSs,1735
137
144
  janito/tools/README.md,sha256=5HkLpF5k4PENJER7SlDPRXj0yo9mpHvAHW4uuzhq4ak,115
@@ -194,9 +201,9 @@ janito/tools/adapters/local/validate_file_syntax/ps1_validator.py,sha256=TeIkPt0
194
201
  janito/tools/adapters/local/validate_file_syntax/python_validator.py,sha256=BfCO_K18qy92m-2ZVvHsbEU5e11OPo1pO9Vz4G4616E,130
195
202
  janito/tools/adapters/local/validate_file_syntax/xml_validator.py,sha256=AijlsP_PgNuC8ZbGsC5vOTt3Jur76otQzkd_7qR0QFY,284
196
203
  janito/tools/adapters/local/validate_file_syntax/yaml_validator.py,sha256=TgyI0HRL6ug_gBcWEm5TGJJuA4E34ZXcIzMpAbv3oJs,155
197
- janito-2.8.0.dist-info/licenses/LICENSE,sha256=GSAKapQH5ZIGWlpQTA7v5YrfECyaxaohUb1vJX-qepw,1090
198
- janito-2.8.0.dist-info/METADATA,sha256=2fIJdVljdImuDYou2lUavylVE_P9nVhcmUeRwVdtmo8,16362
199
- janito-2.8.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
200
- janito-2.8.0.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
201
- janito-2.8.0.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
202
- janito-2.8.0.dist-info/RECORD,,
204
+ janito-2.10.0.dist-info/licenses/LICENSE,sha256=GSAKapQH5ZIGWlpQTA7v5YrfECyaxaohUb1vJX-qepw,1090
205
+ janito-2.10.0.dist-info/METADATA,sha256=I8q2g4vGHg3W7ctBlg3u3jSX6RrAR4RJoqOZJdcPBq4,16365
206
+ janito-2.10.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
207
+ janito-2.10.0.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
208
+ janito-2.10.0.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
209
+ janito-2.10.0.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- from .provider import GroqProvider
@@ -1,46 +0,0 @@
1
- # Groq provider model specifications
2
- from janito.llm.model import LLMModelInfo
3
-
4
- MODEL_SPECS = {
5
- "moonshotai/kimi-k2-instruct": LLMModelInfo(
6
- name="moonshotai/kimi-k2-instruct",
7
- context=128000,
8
- max_input=122880,
9
- max_cot="N/A",
10
- max_response=4096,
11
- thinking_supported=False,
12
- default_temp=0.2,
13
- open="groq",
14
- driver="GroqModelDriver",
15
- other={
16
- "description": "Kimi K2 Instruct model by Moonshot AI",
17
- "supports_tools": True,
18
- "supports_streaming": True,
19
- "supports_vision": False,
20
- "supports_system_prompt": True,
21
- "supports_temperature": True,
22
- "supports_top_p": True,
23
- "supports_frequency_penalty": True,
24
- "supports_presence_penalty": True,
25
- "supports_stop_sequences": True,
26
- "supports_max_tokens": True,
27
- "supports_seed": False,
28
- "supports_json_mode": True,
29
- "supports_logprobs": False,
30
- "supports_top_logprobs": False,
31
- "supports_response_format": True,
32
- "supports_n": False,
33
- "supports_best_of": False,
34
- "supports_echo": False,
35
- "supports_logit_bias": False,
36
- "supports_user": False,
37
- "supports_assistant": False,
38
- "supports_system": False,
39
- "supports_functions": True,
40
- "supports_tool_calls": True,
41
- "supports_parallel_tool_calls": True,
42
- "supports_stream_options": False,
43
- "supports_include_usage": False,
44
- },
45
- )
46
- }
@@ -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)