lionagi 0.3.3__tar.gz → 0.3.4__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. {lionagi-0.3.3 → lionagi-0.3.4}/PKG-INFO +1 -1
  2. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/unit.py +16 -5
  3. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/util.py +27 -0
  4. lionagi-0.3.4/lionagi/version.py +1 -0
  5. {lionagi-0.3.3 → lionagi-0.3.4}/pyproject.toml +1 -1
  6. lionagi-0.3.3/lionagi/version.py +0 -1
  7. {lionagi-0.3.3 → lionagi-0.3.4}/LICENSE +0 -0
  8. {lionagi-0.3.3 → lionagi-0.3.4}/README.md +0 -0
  9. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/__init__.py +0 -0
  10. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/__init__.py +0 -0
  11. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/_setting/__init__.py +0 -0
  12. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/_setting/_setting.py +0 -0
  13. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/README.md +0 -0
  14. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/__init__.py +0 -0
  15. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/function_calling.py +0 -0
  16. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/manual.py +0 -0
  17. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/node.py +0 -0
  18. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/tool.py +0 -0
  19. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/action/tool_manager.py +0 -0
  20. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/README.md +0 -0
  21. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/__init__.py +0 -0
  22. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/base_agent.py +0 -0
  23. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/eval/README.md +0 -0
  24. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/eval/__init__.py +0 -0
  25. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/eval/evaluator.py +0 -0
  26. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/eval/vote.py +0 -0
  27. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/learn/__init__.py +0 -0
  28. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/learn/learner.py +0 -0
  29. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/plan/__init__.py +0 -0
  30. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/plan/plan.py +0 -0
  31. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/agent/plan/unit_template.py +0 -0
  32. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/README.md +0 -0
  33. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/__init__.py +0 -0
  34. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/_logger.py +0 -0
  35. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/README.md +0 -0
  36. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/__init__.py +0 -0
  37. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/component.py +0 -0
  38. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/concepts.py +0 -0
  39. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/exceptions.py +0 -0
  40. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/abc/util.py +0 -0
  41. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/exchange.py +0 -0
  42. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/flow.py +0 -0
  43. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/model.py +0 -0
  44. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/pile.py +0 -0
  45. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/progression.py +0 -0
  46. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/collections/util.py +0 -0
  47. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/director/README.md +0 -0
  48. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/director/__init__.py +0 -0
  49. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/director/direct.py +0 -0
  50. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/director/director.py +0 -0
  51. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/engine/__init__.py +0 -0
  52. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/engine/branch_engine.py +0 -0
  53. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/engine/instruction_map_engine.py +0 -0
  54. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/engine/sandbox_.py +0 -0
  55. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/engine/script_engine.py +0 -0
  56. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/executor/__init__.py +0 -0
  57. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/executor/base_executor.py +0 -0
  58. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/executor/graph_executor.py +0 -0
  59. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/executor/neo4j_executor.py +0 -0
  60. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/README.md +0 -0
  61. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/__init__.py +0 -0
  62. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/edge.py +0 -0
  63. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/edge_condition.py +0 -0
  64. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/graph.py +0 -0
  65. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/hyperedge.py +0 -0
  66. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/node.py +0 -0
  67. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/tree.py +0 -0
  68. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/generic/tree_node.py +0 -0
  69. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/mail/__init__.py +0 -0
  70. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/mail/mail.py +0 -0
  71. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/mail/mail_manager.py +0 -0
  72. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/mail/package.py +0 -0
  73. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/mail/start_mail.py +0 -0
  74. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/__init__.py +0 -0
  75. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/action_request.py +0 -0
  76. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/action_response.py +0 -0
  77. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/assistant_response.py +0 -0
  78. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/instruction.py +0 -0
  79. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/message.py +0 -0
  80. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/system.py +0 -0
  81. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/message/util.py +0 -0
  82. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/report/__init__.py +0 -0
  83. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/report/base.py +0 -0
  84. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/report/form.py +0 -0
  85. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/report/report.py +0 -0
  86. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/report/util.py +0 -0
  87. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/__init__.py +0 -0
  88. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/_default.py +0 -0
  89. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/action.py +0 -0
  90. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/base.py +0 -0
  91. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/boolean.py +0 -0
  92. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/choice.py +0 -0
  93. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/mapping.py +0 -0
  94. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/number.py +0 -0
  95. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/rulebook.py +0 -0
  96. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/string.py +0 -0
  97. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/rule/util.py +0 -0
  98. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/session/__init__.py +0 -0
  99. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/session/branch.py +0 -0
  100. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/session/directive_mixin.py +0 -0
  101. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/session/session.py +0 -0
  102. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/structure/__init__.py +0 -0
  103. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/structure/chain.py +0 -0
  104. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/structure/forest.py +0 -0
  105. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/structure/graph.py +0 -0
  106. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/structure/tree.py +0 -0
  107. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/__init__.py +0 -0
  108. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/parallel_unit.py +0 -0
  109. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/__init__.py +0 -0
  110. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/action.py +0 -0
  111. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/base.py +0 -0
  112. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/plan.py +0 -0
  113. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/predict.py +0 -0
  114. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/score.py +0 -0
  115. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/template/select.py +0 -0
  116. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/unit_form.py +0 -0
  117. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/unit/unit_mixin.py +0 -0
  118. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/validator/__init__.py +0 -0
  119. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/validator/validator.py +0 -0
  120. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/__init__.py +0 -0
  121. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work.py +0 -0
  122. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work_edge.py +0 -0
  123. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work_function.py +0 -0
  124. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work_function_node.py +0 -0
  125. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work_queue.py +0 -0
  126. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/work_task.py +0 -0
  127. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/worker.py +0 -0
  128. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/worker_engine.py +0 -0
  129. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/core/work/worklog.py +0 -0
  130. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/__init__.py +0 -0
  131. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/compressor/__init__.py +0 -0
  132. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/compressor/base.py +0 -0
  133. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/compressor/llm_compressor.py +0 -0
  134. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/compressor/llm_summarizer.py +0 -0
  135. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/compressor/util.py +0 -0
  136. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/README.md +0 -0
  137. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/__init__.py +0 -0
  138. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/parser/__init__.py +0 -0
  139. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/parser/base_parser.py +0 -0
  140. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/parser/base_syntax.txt +0 -0
  141. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/template/__init__.py +0 -0
  142. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/template/base_template.py +0 -0
  143. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/template/schema.py +0 -0
  144. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/directive/tokenizer.py +0 -0
  145. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/evaluator/README.md +0 -0
  146. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/evaluator/__init__.py +0 -0
  147. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/evaluator/ast_evaluator.py +0 -0
  148. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/evaluator/base_evaluator.py +0 -0
  149. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/knowledge/__init__.py +0 -0
  150. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/knowledge/base.py +0 -0
  151. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/knowledge/graph.py +0 -0
  152. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/memory/__init__.py +0 -0
  153. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/strategies/__init__.py +0 -0
  154. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/experimental/strategies/base.py +0 -0
  155. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/__init__.py +0 -0
  156. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/__init__.py +0 -0
  157. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/autogen_/__init__.py +0 -0
  158. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/autogen_/autogen_.py +0 -0
  159. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/langchain_/__init__.py +0 -0
  160. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/langchain_/documents.py +0 -0
  161. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/langchain_/langchain_bridge.py +0 -0
  162. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/__init__.py +0 -0
  163. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/index.py +0 -0
  164. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/llama_index_bridge.py +0 -0
  165. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/llama_pack.py +0 -0
  166. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/node_parser.py +0 -0
  167. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/reader.py +0 -0
  168. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/llamaindex_/textnode.py +0 -0
  169. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/pydantic_/__init__.py +0 -0
  170. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/pydantic_/pydantic_bridge.py +0 -0
  171. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/transformers_/__init__.py +0 -0
  172. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/bridge/transformers_/install_.py +0 -0
  173. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/chunker/__init__.py +0 -0
  174. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/chunker/chunk.py +0 -0
  175. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/config/__init__.py +0 -0
  176. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/config/mlx_configs.py +0 -0
  177. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/config/oai_configs.py +0 -0
  178. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/config/ollama_configs.py +0 -0
  179. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/config/openrouter_configs.py +0 -0
  180. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/loader/__init__.py +0 -0
  181. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/loader/load.py +0 -0
  182. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/loader/load_util.py +0 -0
  183. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/__init__.py +0 -0
  184. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/_mapping.py +0 -0
  185. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/litellm.py +0 -0
  186. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/mistralai.py +0 -0
  187. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/mlx_service.py +0 -0
  188. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/oai.py +0 -0
  189. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/ollama.py +0 -0
  190. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/openrouter.py +0 -0
  191. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/services.py +0 -0
  192. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/provider/transformers.py +0 -0
  193. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/__init__.py +0 -0
  194. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/neo4j.py +0 -0
  195. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/storage_util.py +0 -0
  196. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/structure_excel.py +0 -0
  197. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/to_csv.py +0 -0
  198. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/integrations/storage/to_excel.py +0 -0
  199. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/__init__.py +0 -0
  200. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_api.py +0 -0
  201. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_async.py +0 -0
  202. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_context.py +0 -0
  203. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_convert.py +0 -0
  204. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_dataframe.py +0 -0
  205. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_func_call.py +0 -0
  206. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_image.py +0 -0
  207. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_knowledge_graph.py +0 -0
  208. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_nested.py +0 -0
  209. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_parse.py +0 -0
  210. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_queue.py +0 -0
  211. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_tokenize.py +0 -0
  212. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/ln_validate.py +0 -0
  213. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/special_tokens.py +0 -0
  214. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/libs/sys_util.py +0 -0
  215. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/__init__.py +0 -0
  216. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/__init__.py +0 -0
  217. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/add_feature.py +0 -0
  218. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/base_prompts.py +0 -0
  219. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/code_form.py +0 -0
  220. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/coder.py +0 -0
  221. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/coder/util.py +0 -0
  222. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/__init__.py +0 -0
  223. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/config.py +0 -0
  224. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/data/__init__.py +0 -0
  225. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/data/sample_codes.py +0 -0
  226. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/data/sample_rurbic.py +0 -0
  227. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/forms/__init__.py +0 -0
  228. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/forms/code_analysis_form.py +0 -0
  229. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/rubric.py +0 -0
  230. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/services/__init__.py +0 -0
  231. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/judge/services/judge_code.py +0 -0
  232. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/__init__.py +0 -0
  233. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/data_source/__init__.py +0 -0
  234. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/data_source/finhub_.py +0 -0
  235. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/data_source/google_.py +0 -0
  236. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/data_source/wiki_.py +0 -0
  237. {lionagi-0.3.3 → lionagi-0.3.4}/lionagi/lions/researcher/data_source/yfinance_.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lionagi
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Summary: Towards automated general intelligence.
5
5
  Author: HaiyangLi
6
6
  Author-email: quantocean.li@gmail.com
@@ -12,7 +12,7 @@ from lionagi.libs.ln_func_call import rcall
12
12
 
13
13
  from .unit_form import UnitForm
14
14
  from .unit_mixin import DirectiveMixin
15
- from .util import retry_kwargs
15
+ from .util import break_down_annotation, retry_kwargs
16
16
 
17
17
 
18
18
  class Unit(Directive, DirectiveMixin):
@@ -75,7 +75,7 @@ class Unit(Directive, DirectiveMixin):
75
75
  return_branch=False,
76
76
  formatter=None,
77
77
  format_kwargs={},
78
- pydantic_model: type[BaseModel] = None,
78
+ pydantic_model: type[BaseModel] | BaseModel = None,
79
79
  return_pydantic_model: bool = False,
80
80
  **kwargs,
81
81
  ):
@@ -114,7 +114,13 @@ class Unit(Directive, DirectiveMixin):
114
114
  raise ValueError(
115
115
  "Cannot use both requested_fields and pydantic_model."
116
116
  )
117
- requested_fields = pydantic_model.model_json_schema()["properties"]
117
+ requested_fields = break_down_annotation(pydantic_model)
118
+ context = {
119
+ "info": context,
120
+ "return_guidance": pydantic_model.model_json_schema()[
121
+ "properties"
122
+ ],
123
+ }
118
124
 
119
125
  output, branch = await rcall(
120
126
  self._chat,
@@ -148,8 +154,13 @@ class Unit(Directive, DirectiveMixin):
148
154
 
149
155
  if return_pydantic_model:
150
156
  try:
151
- a_ = to_dict(output, recursive=True, max_recursive_depth=3)
152
- output = pydantic_model(**a_)
157
+ a_ = to_dict(
158
+ output,
159
+ recursive=True,
160
+ max_recursive_depth=5,
161
+ fuzzy_parse=True,
162
+ )
163
+ output = pydantic_model.model_validate(a_)
153
164
  return output, branch if return_branch else output
154
165
  except Exception as e:
155
166
  logging.error(f"Error converting to pydantic model: {e}")
@@ -1,3 +1,8 @@
1
+ import inspect
2
+ from typing import get_args
3
+
4
+ from pydantic import BaseModel
5
+
1
6
  retry_kwargs = {
2
7
  "retries": 0, # kwargs for rcall, number of retries if failed
3
8
  "delay": 0, # number of seconds to delay before retrying
@@ -74,3 +79,25 @@ async def _direct(
74
79
  )
75
80
 
76
81
  return await directive.direct(form=form, return_form=True, **kwargs)
82
+
83
+
84
+ def break_down_annotation(model: type[BaseModel]):
85
+
86
+ def _ispydantic_model(x):
87
+ return inspect.isclass(x) and issubclass(x, BaseModel)
88
+
89
+ if not _ispydantic_model(model):
90
+ return model
91
+
92
+ out = {}
93
+ for k, v in model.__annotations__.items():
94
+ if _ispydantic_model(v):
95
+ out[k] = break_down_annotation(v)
96
+ elif "list" in str(v) and get_args(v):
97
+ v = get_args(v)[0]
98
+ if _ispydantic_model(v):
99
+ v = break_down_annotation(v)
100
+ out[k] = [v]
101
+ else:
102
+ out[k] = v
103
+ return out
@@ -0,0 +1 @@
1
+ __version__ = "0.3.4"
@@ -7,7 +7,7 @@ classifiers=[
7
7
 
8
8
  [tool.poetry]
9
9
  name = "lionagi"
10
- version = "0.3.3"
10
+ version = "0.3.4"
11
11
  description = "Towards automated general intelligence."
12
12
  authors = ["HaiyangLi <quantocean.li@gmail.com>"]
13
13
  readme = "README.md"
@@ -1 +0,0 @@
1
- __version__ = "0.3.3"
File without changes
File without changes
File without changes
File without changes