lionagi 0.9.7__tar.gz → 0.9.9__tar.gz
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.
- {lionagi-0.9.7 → lionagi-0.9.9}/PKG-INFO +1 -1
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/chunk.py +17 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/process.py +108 -7
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/anthropic_/messages.py +16 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/openai_/chat_completions.py +5 -3
- lionagi-0.9.9/lionagi/service/providers/openai_/spec.py +14 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/types.py +3 -1
- lionagi-0.9.9/lionagi/version.py +1 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/pyproject.toml +1 -1
- {lionagi-0.9.7 → lionagi-0.9.9}/uv.lock +1 -1
- lionagi-0.9.7/lionagi/version.py +0 -1
- {lionagi-0.9.7 → lionagi-0.9.9}/.env.example +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/FUNDING.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/dependabot.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/workflows/ci.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/workflows/codeql.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/workflows/docs.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.github/workflows/release.yml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.gitignore +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/.pre-commit-config.yaml +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/CODE_OF_CONDUCT.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/CONTRIBUTING.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/LICENSE +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/README.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/cookbooks/ch01_get_started.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/cookbooks/ch02_concepts.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/dev_tools/count_code_base_lines.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/Makefile +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/_static/custom.css +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/_templates/layout.html +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/conf.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/index.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/action.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/adapter.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/branch.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/branch_operations.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/concepts.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/element_id.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/event.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/form.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/graph.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/index.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/instruct.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/lib_file.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/lib_nested.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/lib_package.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/lib_schema.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/lib_validate.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/log.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/mail.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/message.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/models.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/operative_step.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/pile.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/processor.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/progression.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/service.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/session.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/modules/utils.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/tutorials/get_started.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/tutorials/get_started_pt2.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/tutorials/get_started_pt3.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/docs/tutorials/index.rst +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/_class_registry.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/_errors.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/_types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/file_ops.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/params.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/file/save.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/flatten.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/nfilter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/nget.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/ninsert.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/nmerge.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/npop.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/nset.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/unflatten.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/nested/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/package/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/package/imports.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/package/management.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/package/params.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/package/system.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/parse.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/as_readable.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/extract_code_block.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/extract_docstring.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/function_to_schema.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/schema/json_schema.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/token_transform/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/token_transform/llmlingua.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/token_transform/perplexity.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/token_transform/synthlang.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/common_field_validators.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/fuzzy_match_keys.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/fuzzy_validate_mapping.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/string_similarity.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/libs/validate/validate_boolean.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/ReAct/ReAct.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/ReAct/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/ReAct/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/_act/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/_act/act.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/brainstorm/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/brainstorm/brainstorm.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/brainstorm/prompt.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/chat/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/chat/chat.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/communicate/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/communicate/communicate.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/instruct/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/instruct/instruct.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/interpret/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/interpret/interpret.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/operate/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/operate/operate.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/parse/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/parse/parse.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/plan/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/plan/plan.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/plan/prompt.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/select/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/select/select.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/select/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/translate/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/translate/translate.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operations/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/function_calling.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/request_response_model.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/tool.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/action/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/forms/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/forms/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/forms/flow.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/forms/form.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/forms/report.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/instruct.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/instruct_collection.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/node.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/prompts.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/instruct/reason.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/field_model.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/model_params.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/note.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/operable_model.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/models/schema_model.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/operative.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/step.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/concurrent.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/concurrent_chunk.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/concurrent_sequential_chunk.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/params.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/sequential.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/sequential_chunk.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/sequential_concurrent_chunk.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/strategies/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/operatives/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/_concepts.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/json_adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/pandas_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/pandas_/csv_adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/pandas_/excel_adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/pandas_/pd_dataframe_adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/pandas_/pd_series_adapter.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/adapters/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/element.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/event.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/log.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/pile.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/processor.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/generic/progression.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/graph/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/graph/edge.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/graph/graph.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/graph/node.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/exchange.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/mail.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/mailbox.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/mail/package.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/action_request.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/action_response.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/assistant_response.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/instruction.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/message.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/system.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/README.md +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/action_request.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/action_response.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/assistant_response.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/instruction_message.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/system_message.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/messages/templates/tool_schemas.jinja2 +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/protocols/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/chat_completion.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/match_endpoint.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/rate_limited_processor.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/endpoints/token_calculator.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/imodel.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/anthropic_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/exa_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/exa_/models.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/exa_/search.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/exa_/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/groq_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/groq_/chat_completions.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/ollama_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/ollama_/chat_completions.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/openai_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/openrouter_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/openrouter_/chat_completions.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/perplexity_/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/perplexity_/chat_completions.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/perplexity_/models.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/providers/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/service/types.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/session/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/session/branch.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/session/prompts.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/session/session.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/settings.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/base.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/browser/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/browser/providers/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/browser/providers/browser_use_.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/coder.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/providers/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/providers/aider_.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/providers/e2b_.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/code/sandbox.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/manager.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/providers/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/providers/docling_.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/reader.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/file/writer.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/tools/query/__init__.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/lionagi/utils.py +0 -0
- {lionagi-0.9.7 → lionagi-0.9.9}/prompts/doc_style.md +0 -0
@@ -218,6 +218,7 @@ def chunk_content(
|
|
218
218
|
threshold: int = 256,
|
219
219
|
metadata: dict[str, Any] = {},
|
220
220
|
return_tokens: bool = False,
|
221
|
+
as_node: bool = False,
|
221
222
|
**kwargs: Any,
|
222
223
|
) -> list[dict[str, Any]]:
|
223
224
|
"""
|
@@ -257,6 +258,22 @@ def chunk_content(
|
|
257
258
|
threshold=threshold,
|
258
259
|
)
|
259
260
|
|
261
|
+
if as_node:
|
262
|
+
from lionagi.protocols.graph.node import Node
|
263
|
+
|
264
|
+
return [
|
265
|
+
Node(
|
266
|
+
content=chunk,
|
267
|
+
metadata={
|
268
|
+
"chunk_id": i + 1,
|
269
|
+
"total_chunks": len(chunks),
|
270
|
+
"chunk_size": len(chunk),
|
271
|
+
**metadata,
|
272
|
+
},
|
273
|
+
)
|
274
|
+
for i, chunk in enumerate(chunks)
|
275
|
+
]
|
276
|
+
|
260
277
|
return [
|
261
278
|
{
|
262
279
|
"chunk_content": chunk,
|
@@ -6,7 +6,9 @@ import logging
|
|
6
6
|
from collections.abc import Callable
|
7
7
|
from concurrent.futures import ThreadPoolExecutor, as_completed
|
8
8
|
from pathlib import Path
|
9
|
-
from typing import Any
|
9
|
+
from typing import Any, Literal
|
10
|
+
|
11
|
+
from lionagi.utils import lcall
|
10
12
|
|
11
13
|
from .chunk import chunk_content
|
12
14
|
from .save import save_chunks
|
@@ -87,7 +89,7 @@ def dir_to_files(
|
|
87
89
|
|
88
90
|
def file_to_chunks(
|
89
91
|
file_path: str | Path,
|
90
|
-
|
92
|
+
chunk_by: Literal["chars", "tokens"] = "chars",
|
91
93
|
chunk_size: int = 1500,
|
92
94
|
overlap: float = 0.1,
|
93
95
|
threshold: int = 200,
|
@@ -97,6 +99,7 @@ def file_to_chunks(
|
|
97
99
|
verbose: bool = False,
|
98
100
|
timestamp: bool = True,
|
99
101
|
random_hash_digits: int = 4,
|
102
|
+
as_node: bool = False,
|
100
103
|
) -> list[dict[str, Any]]:
|
101
104
|
"""
|
102
105
|
Process a file and split its content into chunks.
|
@@ -124,9 +127,10 @@ def file_to_chunks(
|
|
124
127
|
ValueError: If there's an error processing the file.
|
125
128
|
"""
|
126
129
|
try:
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
+
if isinstance(file_path, str):
|
131
|
+
file_path = Path(file_path)
|
132
|
+
|
133
|
+
text = file_path.read_text(encoding=encoding)
|
130
134
|
|
131
135
|
metadata = {
|
132
136
|
"file_path": str(file_path),
|
@@ -136,14 +140,111 @@ def file_to_chunks(
|
|
136
140
|
}
|
137
141
|
|
138
142
|
chunks = chunk_content(
|
139
|
-
|
143
|
+
text,
|
144
|
+
chunk_by=chunk_by,
|
145
|
+
chunk_size=chunk_size,
|
146
|
+
overlap=overlap,
|
147
|
+
threshold=threshold,
|
148
|
+
metadata=metadata,
|
149
|
+
as_node=as_node,
|
140
150
|
)
|
141
151
|
|
142
152
|
if output_dir:
|
143
153
|
save_chunks(
|
144
|
-
chunks,
|
154
|
+
chunks=chunks,
|
155
|
+
output_dir=output_dir,
|
156
|
+
verbose=verbose,
|
157
|
+
timestamp=timestamp,
|
158
|
+
random_hash_digits=random_hash_digits,
|
145
159
|
)
|
146
160
|
|
147
161
|
return chunks
|
148
162
|
except Exception as e:
|
149
163
|
raise ValueError(f"Error processing file {file_path}: {e}") from e
|
164
|
+
|
165
|
+
|
166
|
+
def chunk(
|
167
|
+
url_or_path: str | Path,
|
168
|
+
*,
|
169
|
+
file_types: list[str] | None = None, # only local files
|
170
|
+
recursive: bool = False, # only local files
|
171
|
+
chunk_by: Literal["chars", "tokens"] = "chars",
|
172
|
+
chunk_size: int = 1500,
|
173
|
+
overlap: float = 0.1,
|
174
|
+
threshold: int = 200,
|
175
|
+
output_file: str | Path | None = None,
|
176
|
+
metadata: dict[str, Any] | None = None,
|
177
|
+
reader_tool: Callable = None,
|
178
|
+
):
|
179
|
+
if isinstance(url_or_path, str):
|
180
|
+
url_or_path = Path(url_or_path)
|
181
|
+
|
182
|
+
chunks = None
|
183
|
+
files = None
|
184
|
+
if url_or_path.exists():
|
185
|
+
if url_or_path.is_dir():
|
186
|
+
files = dir_to_files(
|
187
|
+
directory=url_or_path,
|
188
|
+
file_types=file_types,
|
189
|
+
recursive=recursive,
|
190
|
+
)
|
191
|
+
elif url_or_path.is_file():
|
192
|
+
files = [url_or_path]
|
193
|
+
else:
|
194
|
+
files = (
|
195
|
+
[str(url_or_path)]
|
196
|
+
if not isinstance(url_or_path, list)
|
197
|
+
else url_or_path
|
198
|
+
)
|
199
|
+
|
200
|
+
if reader_tool is None:
|
201
|
+
reader_tool = lambda x: x.read_text(encoding="utf-8")
|
202
|
+
|
203
|
+
if reader_tool == "docling":
|
204
|
+
from lionagi.libs.package.imports import check_import
|
205
|
+
|
206
|
+
DocumentConverter = check_import(
|
207
|
+
"docling",
|
208
|
+
module_name="document_converter",
|
209
|
+
import_name="DocumentConverter",
|
210
|
+
)
|
211
|
+
converter = DocumentConverter()
|
212
|
+
reader_tool = lambda x: converter.convert(
|
213
|
+
x
|
214
|
+
).document.export_to_markdown()
|
215
|
+
|
216
|
+
texts = lcall(files, reader_tool)
|
217
|
+
chunks = lcall(
|
218
|
+
texts,
|
219
|
+
chunk_content,
|
220
|
+
chunk_by=chunk_by,
|
221
|
+
chunk_size=chunk_size,
|
222
|
+
overlap=overlap,
|
223
|
+
threshold=threshold,
|
224
|
+
metadata=metadata,
|
225
|
+
as_node=True,
|
226
|
+
flatten=True,
|
227
|
+
)
|
228
|
+
if threshold:
|
229
|
+
chunks = [c for c in chunks if len(c.content) > threshold]
|
230
|
+
|
231
|
+
if output_file:
|
232
|
+
from lionagi.protocols.generic.pile import Pile
|
233
|
+
|
234
|
+
output_file = Path(output_file)
|
235
|
+
if output_file.suffix == ".csv":
|
236
|
+
p = Pile(chunks)
|
237
|
+
p.to_csv_file(output_file)
|
238
|
+
|
239
|
+
elif output_file.suffix == ".json":
|
240
|
+
p = Pile(chunks)
|
241
|
+
p.to_json_file(output_file, use_pd=True)
|
242
|
+
|
243
|
+
elif output_file.suffix in Pile.list_adapters():
|
244
|
+
p = Pile(chunks)
|
245
|
+
p.adapt_to(output_file.suffix, fp=output_file)
|
246
|
+
|
247
|
+
else:
|
248
|
+
raise ValueError(f"Unsupported output file format: {output_file}")
|
249
|
+
|
250
|
+
return chunks
|
@@ -29,6 +29,7 @@ CHAT_COMPLETION_CONFIG = {
|
|
29
29
|
"tools",
|
30
30
|
"top_p",
|
31
31
|
"top_k",
|
32
|
+
"cache_control",
|
32
33
|
},
|
33
34
|
"allowed_roles": ["user", "assistant"],
|
34
35
|
}
|
@@ -49,6 +50,21 @@ class AnthropicChatCompletionEndPoint(ChatCompletionEndPoint):
|
|
49
50
|
for k, v in kwargs.items():
|
50
51
|
if k in self.acceptable_kwargs:
|
51
52
|
payload[k] = v
|
53
|
+
if "cache_control" in payload:
|
54
|
+
cache_control = payload.pop("cache_control")
|
55
|
+
if cache_control:
|
56
|
+
cache_control = "ephemeral"
|
57
|
+
last_message = payload["messages"][-1]["content"]
|
58
|
+
if isinstance(last_message, str):
|
59
|
+
last_message = {
|
60
|
+
"type": "text",
|
61
|
+
"text": last_message,
|
62
|
+
"cache_control": cache_control,
|
63
|
+
}
|
64
|
+
elif isinstance(last_message, list) and isinstance(
|
65
|
+
last_message[-1], dict
|
66
|
+
):
|
67
|
+
last_message[-1]["cache_control"] = cache_control
|
52
68
|
if "api_key" in kwargs:
|
53
69
|
headers["x-api-key"] = kwargs["api_key"]
|
54
70
|
headers["anthropic-version"] = kwargs.pop(
|
@@ -4,6 +4,8 @@
|
|
4
4
|
|
5
5
|
from lionagi.service.endpoints.chat_completion import ChatCompletionEndPoint
|
6
6
|
|
7
|
+
from .spec import reasoning_models, reasoning_not_support_params
|
8
|
+
|
7
9
|
CHAT_COMPLETION_CONFIG = {
|
8
10
|
"provider": "openai",
|
9
11
|
"base_url": "https://api.openai.com/v1",
|
@@ -84,9 +86,9 @@ class OpenAIChatCompletionEndPoint(ChatCompletionEndPoint):
|
|
84
86
|
if "api_key" in kwargs:
|
85
87
|
headers["Authorization"] = f"Bearer {kwargs['api_key']}"
|
86
88
|
|
87
|
-
if payload.get("model") in
|
88
|
-
|
89
|
-
|
89
|
+
if payload.get("model") in reasoning_models:
|
90
|
+
for param in reasoning_not_support_params:
|
91
|
+
payload.pop(param, None)
|
90
92
|
if payload["messages"][0].get("role") == "system":
|
91
93
|
payload["messages"][0]["role"] = "developer"
|
92
94
|
else:
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "0.9.9"
|
lionagi-0.9.7/lionagi/version.py
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = "0.9.7"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|