mojentic 0.5.3__py3-none-any.whl → 0.5.5__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 (37) hide show
  1. _examples/broker_examples.py +12 -22
  2. _examples/broker_image_examples.py +41 -0
  3. _examples/ephemeral_task_manager_example.py +48 -0
  4. _examples/oversized_embeddings.py +9 -0
  5. _examples/streaming.py +1 -1
  6. _examples/tell_user_example.py +43 -0
  7. mojentic/agents/iterative_problem_solver.py +5 -2
  8. mojentic/agents/simple_recursive_agent.py +2 -2
  9. mojentic/llm/gateways/openai.py +29 -6
  10. mojentic/llm/llm_broker_spec.py +0 -49
  11. mojentic/llm/message_composers_spec.py +0 -80
  12. mojentic/llm/tools/ask_user_tool.py +1 -1
  13. mojentic/llm/tools/ephemeral_task_manager/__init__.py +27 -0
  14. mojentic/llm/tools/ephemeral_task_manager/append_task_tool.py +77 -0
  15. mojentic/llm/tools/ephemeral_task_manager/append_task_tool_spec.py +34 -0
  16. mojentic/llm/tools/ephemeral_task_manager/clear_tasks_tool.py +57 -0
  17. mojentic/llm/tools/ephemeral_task_manager/clear_tasks_tool_spec.py +32 -0
  18. mojentic/llm/tools/ephemeral_task_manager/complete_task_tool.py +81 -0
  19. mojentic/llm/tools/ephemeral_task_manager/complete_task_tool_spec.py +43 -0
  20. mojentic/llm/tools/ephemeral_task_manager/ephemeral_task_list.py +202 -0
  21. mojentic/llm/tools/ephemeral_task_manager/ephemeral_task_list_spec.py +137 -0
  22. mojentic/llm/tools/ephemeral_task_manager/insert_task_after_tool.py +84 -0
  23. mojentic/llm/tools/ephemeral_task_manager/insert_task_after_tool_spec.py +42 -0
  24. mojentic/llm/tools/ephemeral_task_manager/list_tasks_tool.py +80 -0
  25. mojentic/llm/tools/ephemeral_task_manager/list_tasks_tool_spec.py +38 -0
  26. mojentic/llm/tools/ephemeral_task_manager/prepend_task_tool.py +77 -0
  27. mojentic/llm/tools/ephemeral_task_manager/prepend_task_tool_spec.py +34 -0
  28. mojentic/llm/tools/ephemeral_task_manager/start_task_tool.py +81 -0
  29. mojentic/llm/tools/ephemeral_task_manager/start_task_tool_spec.py +43 -0
  30. mojentic/llm/tools/organic_web_search.py +37 -0
  31. mojentic/llm/tools/tell_user_tool.py +27 -0
  32. {mojentic-0.5.3.dist-info → mojentic-0.5.5.dist-info}/METADATA +2 -1
  33. {mojentic-0.5.3.dist-info → mojentic-0.5.5.dist-info}/RECORD +36 -14
  34. {mojentic-0.5.3.dist-info → mojentic-0.5.5.dist-info}/WHEEL +1 -1
  35. mojentic/llm/tools/web_search.py +0 -35
  36. {mojentic-0.5.3.dist-info → mojentic-0.5.5.dist-info}/licenses/LICENSE.md +0 -0
  37. {mojentic-0.5.3.dist-info → mojentic-0.5.5.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,7 @@
1
1
  _examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  _examples/broker_as_tool.py,sha256=axLrX9lzQAAxSTCmm1njvOk63EWfVRG3NU6pLiMyYH8,2962
3
- _examples/broker_examples.py,sha256=0byvkckM34pOnJhiddh7Rvfy2zRalBH6DT9ayUDT2OE,2292
3
+ _examples/broker_examples.py,sha256=7tES2KyKc3uigBuxkwOTf5UGhp7nVeVqLhd8fEHSWEc,1901
4
+ _examples/broker_image_examples.py,sha256=8dpZ2RFmRYhJqoeWklzlPxmvj9m4M393452SO_D2bJY,1133
4
5
  _examples/characterize_ollama.py,sha256=_TzPEAoTuB-saTiaypEQAsUpiBeM37l9I5wCMU3GM4E,2521
5
6
  _examples/characterize_openai.py,sha256=JQQNjsHIEegjLAS3uzDmq_Ci_ZqXTqjcoVaC-rS_R_8,564
6
7
  _examples/chat_session.py,sha256=7mLpH4IGQUgyyiY-fYbikDEiR5vEH-V5Z1qtB50d_qg,288
@@ -10,6 +11,7 @@ _examples/current_datetime_tool_example.py,sha256=Ihjwp9svf2rf4WUGOzs6L_rEqc5QhP
10
11
  _examples/design_analysis.py,sha256=66JxvnA065QV__WXpxJX_eTBDan34nGcKvao75UPLlw,1321
11
12
  _examples/embeddings.py,sha256=94DAMsMB35BU98hOfOeOsbqntcequFSdtaStox2hTvk,267
12
13
  _examples/ensures_files_exist.py,sha256=LAwX9YtUZGI6NT254PY7oC5yg6q-b9Q_Dez9gGrabQM,2009
14
+ _examples/ephemeral_task_manager_example.py,sha256=Q1YpLPwDkB-ytIGgCh2eWOr5EJ0FE-osxJ0B0wDlQkY,1491
13
15
  _examples/file_deduplication.py,sha256=jYayx4BCrk1uJwVBkjIXzguLQOWLREi4PBPzoK9LuOU,1665
14
16
  _examples/file_tool.py,sha256=F8xU7JdTScNzEXyGYqK6D_xQ28MbUXXm854WJmJkZo8,2214
15
17
  _examples/image_analysis.py,sha256=Kj49vLQD1DIpvv5P7rir4BqzsVCTgq-tfppqXcYVJkA,503
@@ -17,6 +19,7 @@ _examples/image_broker.py,sha256=SoIphNj98zk1i7EQc7M2n2O_9ShDHwErmJ6jf67mzX0,355
17
19
  _examples/image_broker_splat.py,sha256=O7rzTFUka32if4G4VuXvhu1O-2lRMWfi0r8gjIE8-0Y,1934
18
20
  _examples/iterative_solver.py,sha256=ANGdC74ymHosVt6xUBjplkJl_W3ALTGxOkDpPLEDcm8,1331
19
21
  _examples/list_models.py,sha256=8noMpGeXOdX5Pf0NXCt_CRurOKEg_5luhWveGntBhe8,578
22
+ _examples/oversized_embeddings.py,sha256=_z2JoqZn0g7VtRsFVWIkngVqzjhQQvCEUYWVxs1I7MM,284
20
23
  _examples/raw.py,sha256=Y2wvgynFuoUs28agE4ijsLYec8VRjiReklqlCH2lERs,442
21
24
  _examples/react.py,sha256=VQ-5MmjUXoHzBFPTV_JrocuOkDzZ8oyUUSYLlEToJ_0,939
22
25
  _examples/recursive_agent.py,sha256=NHmX8iQc1y43AKh1ZlAdV9OZ18qVaRRmSaKALE_KI6k,2966
@@ -26,7 +29,8 @@ _examples/simple_llm_repl.py,sha256=bpk7S1-yQ-oZdRD_0ICV37NQxntgvgjiFD5KdIU40Ig,
26
29
  _examples/simple_structured.py,sha256=9nutIoPNFdtwWCfKkUuvFmsBIzcfhBqlonRWGVYDmJo,1327
27
30
  _examples/simple_tool.py,sha256=9hRo2YZk7NmprTIkLmEyueCbZ0Ls1Ey4l4eDvvgoWy8,1288
28
31
  _examples/solver_chat_session.py,sha256=4mTsgQVJWwujDFX6NUIK6kKr45E09Q4yIkZF-FdoTtg,2148
29
- _examples/streaming.py,sha256=bIK4EnfO_BEwR_TOonnUgVPjxA2-bg8PjyEm-iZgDck,1162
32
+ _examples/streaming.py,sha256=P1CGvm11yi_tojnha2Qmp_OFB5A3T-F5dWIzxEclNhM,1137
33
+ _examples/tell_user_example.py,sha256=gPGS_3KAHUIFsnvkDXX6u1mVqlsB67zsyNdGuEho60o,1274
30
34
  _examples/working_memory.py,sha256=xbCHb6Y0Um6ai5T9fWAX4oQOcCQJDinsn902qm8q48E,1935
31
35
  _examples/react/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
36
  _examples/react/formatters.py,sha256=nbgWve0YGKaRY6P4tXV84PYw8YDN4neefiq7mR2I_tI,1065
@@ -47,9 +51,9 @@ mojentic/agents/base_agent.py,sha256=m1SRyzY9ou4tesFDszonC4Y8moQMg9eofvJeuhoXmM0
47
51
  mojentic/agents/base_llm_agent.py,sha256=26pe0nS7UD1x1-NZjGMQMguxxQBjcRDyXMzcSmJOd2c,3094
48
52
  mojentic/agents/base_llm_agent_spec.py,sha256=1kzayCtAZY7oWloaFMh7-NkTtiKihDCLD3i9HwH3_Uc,2571
49
53
  mojentic/agents/correlation_aggregator_agent.py,sha256=okdq92rMNwIXTgnuwwn3zp4JzSxTh05vGWzTGocOgbU,1134
50
- mojentic/agents/iterative_problem_solver.py,sha256=dU0Zd-cYOyuZ2GM36_oRK1KD3_gEZJpMqvLqPhbbxGo,3980
54
+ mojentic/agents/iterative_problem_solver.py,sha256=RLt8MCM99d-Z26EhC5UnmE0M97EM475VGBVsNio8DSA,4329
51
55
  mojentic/agents/output_agent.py,sha256=I9GHcWvQhWxEcvjzj47scKo_QF8_6yR17ZUEHhwC94Y,231
52
- mojentic/agents/simple_recursive_agent.py,sha256=10L4MshVn9s2MtBUxZfJeXZakOSxfKQh0EkcwPLbfiE,9896
56
+ mojentic/agents/simple_recursive_agent.py,sha256=DcJFttTAYurRIObTL8kfbHUs5uvuqh6prEgA5nmxCLo,9950
53
57
  mojentic/audit/event_store.py,sha256=uw5ploNym9CvI-WDeW3Y4qHJupPWBQaGrfrubxOfmpA,130
54
58
  mojentic/audit/event_store_spec.py,sha256=mCryZGWNXP9CmukvD3hUyQGs_7afjwbTK3RdT831Lzc,594
55
59
  mojentic/context/__init__.py,sha256=MKMP7ViQg8gMtLFvn9pf47XMc5beA5Wx95K4dEw93z8,55
@@ -58,9 +62,9 @@ mojentic/llm/__init__.py,sha256=mwdPpTRofw7_KSlW6ZQmcM-GSpyISWyI2bxphKpV7A0,180
58
62
  mojentic/llm/chat_session.py,sha256=H2gY0mZYVym8jC69VHsmKaRZ9T87Suyw0-TW5r850nA,3992
59
63
  mojentic/llm/chat_session_spec.py,sha256=8-jj-EHV2WwWuvo3t8I75kSEAYiG1nR-OEwkkLTi_z0,3872
60
64
  mojentic/llm/llm_broker.py,sha256=8dEgqU-cPesPk4-jx36oPnvKxB34bLONbpyAW_2L-es,5884
61
- mojentic/llm/llm_broker_spec.py,sha256=zxOf3n8lXmUsowzlMcC-fRcOj_6wwDf7xIqLIV278nM,6979
65
+ mojentic/llm/llm_broker_spec.py,sha256=40lzmYm_6Zje6z5MQ7_o3gSBThLsNW_l_1mZTUVll6A,5342
62
66
  mojentic/llm/message_composers.py,sha256=Fo9o7UGZOOIYoGI_DyOfP_oMiEiCMQz-zdWdTKtozVk,12108
63
- mojentic/llm/message_composers_spec.py,sha256=IXZ-Gl--1MGbmRkFNxucWTE7OZgLQHDDgw1WqMiZnF0,14762
67
+ mojentic/llm/message_composers_spec.py,sha256=VbaDR-fXWogI5ONSpkzvgPY9Tv9HQX6eEqB8J0ev2jQ,11641
64
68
  mojentic/llm/gateways/__init__.py,sha256=u7hXzngoRw_qbsJeiCH2NQ8vC2hF5DnqcXsfLVVPSSw,104
65
69
  mojentic/llm/gateways/anthropic.py,sha256=SsyNjq9QaXaqiMM43C9fwLp57hpgFtwNPJUnOAYVrtc,1788
66
70
  mojentic/llm/gateways/anthropic_messages_adapter.py,sha256=K6kEZeVt7E1endbGMLsh5l9SxC3Y5dnvbcejVqi_qUs,3003
@@ -71,7 +75,7 @@ mojentic/llm/gateways/models.py,sha256=rHoXkaK5FOgWV5X-nkFhqubwk3sUQceJj3rBnxgqB
71
75
  mojentic/llm/gateways/ollama.py,sha256=629fpZhC0zVCYqj360-PKTT4mQOLec5nzzvfMtS_mLQ,7581
72
76
  mojentic/llm/gateways/ollama_messages_adapter.py,sha256=kUN_p2FyN88_trXMcL-Xsn9xPBU7pGKlJwTUEUCf6G4,1404
73
77
  mojentic/llm/gateways/ollama_messages_adapter_spec.py,sha256=gVRbWDrHOa1EiZ0CkEWe0pGn-GKRqdGb-x56HBQeYSE,4981
74
- mojentic/llm/gateways/openai.py,sha256=lYD2-DWt2W3fnmO7k8m29PD-wx4UDvcpPLduanj7tzc,4473
78
+ mojentic/llm/gateways/openai.py,sha256=NQECA41PS21RhXjwQdbH3DAP15WqkEl22UlS1ka_lLM,5434
75
79
  mojentic/llm/gateways/openai_message_adapter_spec.py,sha256=IgXyio15nXn11MiFpUnAxm5fFpPU9m-c4qerd9gbpBA,6473
76
80
  mojentic/llm/gateways/openai_messages_adapter.py,sha256=Qwidv7C-wXDOEV8NYNjgIbHnJSlkcoK10FaeLos5zTc,2882
77
81
  mojentic/llm/gateways/tokenizer_gateway.py,sha256=ztuqfunlJ6xmyUPPHcC_69-kegiNJD6jdSEde7hDh2w,485
@@ -80,19 +84,37 @@ mojentic/llm/registry/llm_registry.py,sha256=beyrgGrkXx5ZckUJzC1nQ461vra0fF6s_qR
80
84
  mojentic/llm/registry/models.py,sha256=XOZ0ElTL5mEicpcUk9lrVr0GRFgR1uFmDm7GGWm7yYg,2043
81
85
  mojentic/llm/registry/populate_registry_from_ollama.py,sha256=YFlnyXW-Htveu8frPEntV-c_84Xoh_WhHGww5IqtPIg,2539
82
86
  mojentic/llm/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
- mojentic/llm/tools/ask_user_tool.py,sha256=WrI3uTzIEmr_S5Pl-rmvh2f3O2IIFYfnJ5zeel_59ck,972
87
+ mojentic/llm/tools/ask_user_tool.py,sha256=TiLVq1OttptStwxNvZkxJTRCIohf7SqweB2nT4icFYY,984
84
88
  mojentic/llm/tools/current_datetime.py,sha256=JkIFlBBnvE4CMcgZizqITVTtNfL7zeeLxD54E7oMeC8,1585
85
89
  mojentic/llm/tools/date_resolver.py,sha256=VDxX59PTHo0PstDxaJUo3SF7vkvQoG92bo6j8ABq8y4,2185
86
90
  mojentic/llm/tools/date_resolver_spec.py,sha256=OaRvJyhSN8sgi75euk4E5ImaqUmvQdgZKY8u_NOiPWE,1185
87
91
  mojentic/llm/tools/file_manager.py,sha256=X8Uw4XtdH_Ol2EB3SN11-GYlC1diJ1cAywU9_EuCjCg,3788
88
92
  mojentic/llm/tools/llm_tool.py,sha256=wU1DNf9DpMtcHhP-YC6_NAn1Frel_Ota6yqgPK2Xsp4,407
93
+ mojentic/llm/tools/organic_web_search.py,sha256=X_WQSSFgeMp5jlm0tnqGOHDIZ2KHDvz3k6GF-XqsuN4,1301
94
+ mojentic/llm/tools/tell_user_tool.py,sha256=bF_PTfF0-skCi_Exw6EPpdfoNUZRJ4MWg-XCe4VYd6s,999
89
95
  mojentic/llm/tools/tool_wrapper.py,sha256=6YZOhckgNsSUc7YK6bKjODjRTwi6wcH9bdcySUDPt3Q,1391
90
96
  mojentic/llm/tools/tool_wrapper_spec.py,sha256=LGqtre-g8SzOy3xtpbMdgTnw2EdYutmFOsMpediE8_0,2543
91
- mojentic/llm/tools/web_search.py,sha256=L1accST2xMhGAkwHCLlIvKihTLiaYxl0NI6IqCJWGCw,1102
97
+ mojentic/llm/tools/ephemeral_task_manager/__init__.py,sha256=npuEwAAks8IZtbQCspAtk1K2kLRVfbfs_o9k1kJIPa4,1193
98
+ mojentic/llm/tools/ephemeral_task_manager/append_task_tool.py,sha256=A1nNF9T6ht-B6WC1CAO1F9T-PGHafwBGvETTMI2RENU,2317
99
+ mojentic/llm/tools/ephemeral_task_manager/append_task_tool_spec.py,sha256=cqJ2HSAgBge3S76-hC6T8Bv1Ox3buWeSdsEpVbMjNPs,1159
100
+ mojentic/llm/tools/ephemeral_task_manager/clear_tasks_tool.py,sha256=GCBGVVlRnYS3llZwMUgNgsKBkZKu4FFTaKTb95F9b10,1476
101
+ mojentic/llm/tools/ephemeral_task_manager/clear_tasks_tool_spec.py,sha256=-MMHdu1e8CVfyDeKIpxfI5wyi26Uob3weDPR9rNPEe0,948
102
+ mojentic/llm/tools/ephemeral_task_manager/complete_task_tool.py,sha256=ZW_7DYRLruErdeuBUBuEfgKgE4Hlf-p5lY3W14D5Au8,2454
103
+ mojentic/llm/tools/ephemeral_task_manager/complete_task_tool_spec.py,sha256=qFTJHwLAASyo89kVGX2ATb-2x2hbkxz9hRALMUsZ8RE,1549
104
+ mojentic/llm/tools/ephemeral_task_manager/ephemeral_task_list.py,sha256=jq37585jnSgIARQ0SgB_PQylSv9qI2_igoyr8ZMHUCc,5430
105
+ mojentic/llm/tools/ephemeral_task_manager/ephemeral_task_list_spec.py,sha256=TmaQCsPoZ7IYSnaRiMj8Y7wuaZEzEuGK1n8aSjZQORg,4740
106
+ mojentic/llm/tools/ephemeral_task_manager/insert_task_after_tool.py,sha256=hoVMu9_-cDYIIrAf66rIPIj_qep1sXd5JbgT4ZfLFdk,2947
107
+ mojentic/llm/tools/ephemeral_task_manager/insert_task_after_tool_spec.py,sha256=8UrjnLlEjF28RLPnsg5CESuSmaVUGULMdUjtYu5KW9w,1791
108
+ mojentic/llm/tools/ephemeral_task_manager/list_tasks_tool.py,sha256=jnkmmxOcytygDDvqEZT8cdqDZCedyC54FI2Gee7igrA,2103
109
+ mojentic/llm/tools/ephemeral_task_manager/list_tasks_tool_spec.py,sha256=xwPAhx5ix7In8NFMm6VVbxoYG1iwLHcn_7wqMHE6HH8,1162
110
+ mojentic/llm/tools/ephemeral_task_manager/prepend_task_tool.py,sha256=GGqPTdBTkjhXMyNcWAJcCkuVBxGB3xmTIyKV9eDmwNA,2349
111
+ mojentic/llm/tools/ephemeral_task_manager/prepend_task_tool_spec.py,sha256=lUCnejAON9g0DDNS64EVHwapPjF8b87RsXPUVvvG0b4,1174
112
+ mojentic/llm/tools/ephemeral_task_manager/start_task_tool.py,sha256=VH8Wa4-ZmkMIsyLuLXJx4pGidiT0KeT55DnujFpK-0o,2414
113
+ mojentic/llm/tools/ephemeral_task_manager/start_task_tool_spec.py,sha256=oDeVPPfquM2ojwG0aaNnbWCB_LRgm8runtG-CumZkLg,1490
92
114
  mojentic/utils/__init__.py,sha256=lqECkkoFvHFttDnafRE1vvh0Dmna_lwupMToP5VvX5k,115
93
115
  mojentic/utils/formatting.py,sha256=bPrwwdluXdQ8TsFxfWtHNOeMWKNvAfABSoUnnA1g7c8,947
94
- mojentic-0.5.3.dist-info/licenses/LICENSE.md,sha256=txSgV8n5zY1W3NiF5HHsCwlaW0e8We1cSC6TuJUqxXA,1060
95
- mojentic-0.5.3.dist-info/METADATA,sha256=0WlHklNeQXHa9joHQTemZmBVRYeI12UVTHjZ46Ao9c4,4935
96
- mojentic-0.5.3.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
97
- mojentic-0.5.3.dist-info/top_level.txt,sha256=Q-BvPQ8Eu1jnEqK8Xkr6A9C8Xa1z38oPZRHuA5MCTqg,19
98
- mojentic-0.5.3.dist-info/RECORD,,
116
+ mojentic-0.5.5.dist-info/licenses/LICENSE.md,sha256=txSgV8n5zY1W3NiF5HHsCwlaW0e8We1cSC6TuJUqxXA,1060
117
+ mojentic-0.5.5.dist-info/METADATA,sha256=TUpgd_jz6xTBnJacDQm1588BgLKkVtfkhlSEnU7NldA,4956
118
+ mojentic-0.5.5.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
119
+ mojentic-0.5.5.dist-info/top_level.txt,sha256=Q-BvPQ8Eu1jnEqK8Xkr6A9C8Xa1z38oPZRHuA5MCTqg,19
120
+ mojentic-0.5.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (79.0.1)
2
+ Generator: setuptools (80.4.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,35 +0,0 @@
1
- import os
2
-
3
- import serpapi
4
-
5
- api_key = os.getenv("SERPAPI_API_KEY")
6
-
7
-
8
- def organic_search(query: str, engine: str = "google", location: str = None, hl: str = "en", gl="ca") -> dict:
9
- results = serpapi.search(q=query, engine=engine, location=location, hl=hl, gl=gl, api_key=api_key)
10
- # Limiting this to the organic results cuts this from 60K to 3K tokens
11
- return results['organic_results']
12
-
13
-
14
- organic_search_tool = {
15
- "descriptor": {
16
- "type": "function",
17
- "function": {
18
- "name": "organic_search",
19
- "description":
20
- "Search the Internet for information matching the given query and return the organic search results.",
21
- "parameters": {
22
- "type": "object",
23
- "properties": {
24
- "query": {
25
- "type": "string",
26
- "description": "The search query."
27
- },
28
- },
29
- "additionalProperties": False,
30
- "required": ["query"]
31
- },
32
- },
33
- },
34
- "python_function": organic_search,
35
- }