cocoindex 0.2.10__tar.gz → 0.2.11__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.
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/_docs_release.yml +4 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/_test.yml +3 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/docs_release.yml +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/docs_test.yml +3 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/release.yml +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/Cargo.lock +1 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/Cargo.toml +1 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/PKG-INFO +1 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/THIRD_PARTY_NOTICES.html +1 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/academic_papers_index.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/codebase_index.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/custom_targets.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/docs_to_knowledge_graph.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/document_ai.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/image_search.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/manual_extraction.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/multi_format_index.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/patient_form_extraction.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/photo_search.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/postgres_source.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/product_recommendation.md +1 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/simple_vector_index.md +1 -0
- cocoindex-0.2.11/docs/docs/query.mdx +213 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/yarn.lock +1808 -1766
- cocoindex-0.2.11/examples/image_search/frontend/package-lock.json +1731 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/package.json +2 -2
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/__init__.py +5 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/auth_registry.py +2 -13
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/convert.py +2 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/flow.py +79 -18
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/op.py +5 -11
- cocoindex-0.2.11/python/cocoindex/query_handler.py +51 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/runtime.py +8 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/db_tracking.rs +24 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/row_indexer.rs +11 -4
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/source_indexer.rs +23 -2
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/lib_context.rs +8 -2
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/py/mod.rs +73 -1
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/server.rs +4 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/service/flows.rs +49 -10
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/service/mod.rs +1 -0
- cocoindex-0.2.11/src/service/query_handler.rs +42 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/auth_registry.rs +17 -0
- cocoindex-0.2.10/docs/docs/query.mdx +0 -101
- cocoindex-0.2.10/examples/image_search/frontend/package-lock.json +0 -1265
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.cargo/config.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.env.lib_debug +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/ISSUE_TEMPLATE//360/237/220/233-bug-report.md" +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/ISSUE_TEMPLATE//360/237/222/241-feature-request.md" +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/scripts/update_version.sh +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/CI.yml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.github/workflows/format.yml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/.pre-commit-config.yaml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/CODE_OF_CONDUCT.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/CONTRIBUTING.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/LICENSE +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/about.hbs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/about.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/dev/neo4j.yaml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/dev/postgres.yaml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/about/community.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/ai/llm.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/contributing/guide.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/contributing/new_built_in_target.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/contributing/setup_dev_environment.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/basics.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/cli.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/data_example.svg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/data_types.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/flow_def.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/flow_example.svg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/flow_methods.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/core/settings.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/custom_ops/custom_functions.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/custom_ops/custom_targets.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/index.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/getting_started/installation.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/getting_started/markdown_files.zip +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/getting_started/overview.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/getting_started/quickstart.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/ops/functions.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/ops/sources.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/ops/targets.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/tutorials/live_updates.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/tutorials/manage_flow_dynamically.mdx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docusaurus.config.ts +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/package.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/sidebars.ts +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/components/GitHubButton/index.tsx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/css/custom.css +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/theme/DocCard/index.tsx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/theme/DocCard/styles.module.css +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/theme/DocCardList/index.tsx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/theme/DocCardList/styles.module.css +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/src/theme/Root.js +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/.nojekyll +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/docusaurus.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/abstract_chunks.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/basic_info.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/chunk_embedding.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/first_page.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/academic_papers_index/metadata.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/codebase_index/chunk.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/codebase_index/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/codebase_index/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/custom_targets/convert.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/custom_targets/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/dedupe.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/export_document.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/export_relationship.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/extract_relationship.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/relationship.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/docs_to_knowledge_graph/summary.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/document_ai/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/document_ai/document_ai.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/document_ai/processor.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/image_search/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/image_search/embedding.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/image_search/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/image_search/multi_modal_architecture.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/image_search/result.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/manual_extraction/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/manual_extraction/extraction.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/manual_extraction/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/manual_extraction/summary.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/multi_format_index/colpali_architecture.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/multi_format_index/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/multi_format_index/embed.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/multi_format_index/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/multi_format_index/pages.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/patient_form_extraction/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/patient_form_extraction/extraction.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/patient_form_extraction/fields.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/patient_form_extraction/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/patient_form_extraction/tomarkdown.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/photo_search/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/photo_search/extraction.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/photo_search/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/collector.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/description.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/embed.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/lineage.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/price.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/postgres_source/source.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/dedupe.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/export_all.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/export_product.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/export_taxonomy.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/extract_product.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/extract_taxonomy.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/neo4j.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/parse_json.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/product_recommendation/taxonomy.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/simple_vector_index/chunk.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/simple_vector_index/cover.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/simple_vector_index/embed.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/examples/simple_vector_index/flow.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/favicon.ico +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/icon.svg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/img/incremental-etl.gif +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/static/robots.txt +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/docs/tsconfig.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/amazon_s3_embedding/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/amazon_s3_embedding/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/amazon_s3_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/amazon_s3_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/amazon_s3_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/azure_blob_embedding/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/azure_blob_embedding/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/azure_blob_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/azure_blob_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/azure_blob_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/code_embedding/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/code_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/code_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/code_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/data/bizarre_animals.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/data/chunk_norris.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/custom_output_files/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/docs_to_knowledge_graph/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/docs_to_knowledge_graph/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/docs_to_knowledge_graph/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/docs_to_knowledge_graph/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/images/Carter_welcomes_Reagan.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/images/Solvay_conference_1927.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/images/Steve_Jobs_and_Bill_Gates_(522695099).jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/images/einplanck3.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/face_recognition/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/.dockerignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/compose.yaml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/dockerfile +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/files/1810.04805v2.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/fastapi_server_docker/requirements.txt +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/gdrive_text_embedding/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/gdrive_text_embedding/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/gdrive_text_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/gdrive_text_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/gdrive_text_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/colpali_main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/index.html +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/src/App.jsx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/src/main.jsx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/src/style.css +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/frontend/vite.config.js +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/img/cat1.jpeg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/img/dog1.jpeg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/img/elephant1.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/img/giraffe.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/image_search/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/data/bizarre_animals.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/data/chunk_norris.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/live_updates/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/manuals/array.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/manuals/base64.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/manuals/copy.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/manuals/glob.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/manuals_llm_extraction/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/1706.03762v7.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/1810.04805v2.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/2502.06786v3.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/healthcare_industry_test_p101.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/healthcare_industry_test_p86.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/healthcare_industry_test_p9.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/restaurant_brands_international_2023.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/multi_format_indexing/source_files/sweetgreen_2023.jpg +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/papers/1706.03762v7.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/papers/1810.04805v2.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/papers/2502.06786v3.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/papers/2502.20346v1.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/paper_metadata/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/data/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_David_Artificial.docx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_Emily_Artificial.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_Joe_Artificial.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_From_Jane_Artificial.docx +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/patient_intake_extraction/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/pdf_files/1706.03762v7.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/pdf_files/1810.04805v2.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/pdf_files/rfc8259.pdf +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/pdf_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/postgres_source/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/postgres_source/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/postgres_source/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/postgres_source/prepare_source_data.sql +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/postgres_source/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/.env.example +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/.gitignore +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/img/cocoinsight.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/img/neo4j.png +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p1.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p2.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p3.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p4.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p5.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p6.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p7.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p8.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/products/p9.json +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/product_recommendation/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/Text_Embedding.ipynb +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/markdown_files/1706.03762v7.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/markdown_files/1810.04805v2.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/markdown_files/rfc8259.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding_qdrant/.env +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding_qdrant/README.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding_qdrant/main.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding_qdrant/markdown_files/rfc8259.md +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/examples/text_embedding_qdrant/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/pyproject.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/cli.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/functions.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/index.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/lib.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/llm.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/py.typed +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/setting.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/setup.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/sources.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/subprocess_exec.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/targets.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/__init__.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/test_convert.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/test_optional_database.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/test_transform_flow.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/test_typing.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/tests/test_validation.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/typing.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/user_app_loader.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/utils.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/python/cocoindex/validation.py +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/ruff.toml +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/duration.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/field_attrs.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/json_schema.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/schema.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/spec.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/base/value.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/analyzed_flow.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/analyzer.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/exec_ctx.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/flow_builder.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/builder/plan.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/db_tracking_setup.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/dumper.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/evaluator.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/indexing_status.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/live_updater.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/memoization.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/execution/stats.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/lib.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/anthropic.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/gemini.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/litellm.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/ollama.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/openai.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/openrouter.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/vllm.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/llm/voyage.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/factory_bases.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/embed_text.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/extract_by_llm.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/parse_json.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/split_recursively.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/functions/test_utils.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/interface.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/py_factory.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/registration.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/registry.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sdk.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/shared/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/shared/postgres.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/amazon_s3.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/azure_blob.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/google_drive.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/local_file.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/postgres.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/shared/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/sources/shared/pattern_matcher.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/kuzu.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/neo4j.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/postgres.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/qdrant.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/shared/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/shared/property_graph.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/ops/targets/shared/table_columns.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/prelude.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/py/convert.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/service/error.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/settings.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/components.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/db_metadata.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/driver.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/flow_features.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/setup/states.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/concur_control.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/db.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/deser.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/fingerprint.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/immutable.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/mod.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/retryable.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/str_sanitize.rs +0 -0
- {cocoindex-0.2.10 → cocoindex-0.2.11}/src/utils/yaml_ser.rs +0 -0
@@ -2,7 +2,7 @@
|
|
2
2
|
name = "cocoindex"
|
3
3
|
# Version used for local development is always higher than others to take precedence.
|
4
4
|
# Will be overridden for specific release versions.
|
5
|
-
version = "0.2.
|
5
|
+
version = "0.2.11"
|
6
6
|
edition = "2024"
|
7
7
|
rust-version = "1.88"
|
8
8
|
license = "Apache-2.0"
|
@@ -2428,7 +2428,7 @@ Software.
|
|
2428
2428
|
<h3 id="Apache-2.0">Apache License 2.0</h3>
|
2429
2429
|
<h4>Used by:</h4>
|
2430
2430
|
<ul class="license-used-by">
|
2431
|
-
<li><a href=" https://crates.io/crates/cocoindex ">cocoindex 0.2.
|
2431
|
+
<li><a href=" https://crates.io/crates/cocoindex ">cocoindex 0.2.11</a></li>
|
2432
2432
|
<li><a href=" https://github.com/awesomized/crc-fast-rust ">crc-fast 1.3.0</a></li>
|
2433
2433
|
<li><a href=" https://github.com/qdrant/rust-client ">qdrant-client 1.15.0</a></li>
|
2434
2434
|
</ul>
|
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/custom_targets'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/custom_targets/cover.png
|
9
9
|
tags: [custom-building-blocks]
|
10
|
+
image: /img/examples/custom_targets/cover.png
|
10
11
|
tags: [custom-building-blocks]
|
11
12
|
---
|
12
13
|
import { GitHubButton, YouTubeButton, DocumentationButton } from '../../../src/components/GitHubButton';
|
{cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/docs_to_knowledge_graph.md
RENAMED
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/knowledge-graph-for-docs'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/docs_to_knowledge_graph/cover.png
|
9
9
|
tags: [knowledge-graph, structured-data-extraction]
|
10
|
+
image: /img/examples/docs_to_knowledge_graph/cover.png
|
10
11
|
tags: [knowledge-graph, structured-data-extraction]
|
11
12
|
---
|
12
13
|
|
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/document_ai'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/document_ai/cover.png
|
9
9
|
tags: [vector-index, custom-building-block]
|
10
|
+
image: /img/examples/document_ai/cover.png
|
10
11
|
tags: [vector-index, custom-building-block]
|
11
12
|
---
|
12
13
|
import { GitHubButton, DocumentationButton, ExampleButton } from '../../../src/components/GitHubButton';
|
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/manual_extraction'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/manual_extraction/cover.png
|
9
9
|
tags: [structured-data-extraction, data-mapping]
|
10
|
+
image: /img/examples/manual_extraction/cover.png
|
10
11
|
tags: [structured-data-extraction, data-mapping]
|
11
12
|
---
|
12
13
|
|
{cocoindex-0.2.10 → cocoindex-0.2.11}/docs/docs/examples/examples/patient_form_extraction.md
RENAMED
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/patient_form_extraction'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/patient_form_extraction/cover.png
|
9
9
|
tags: [structured-data-extraction, data-mapping ]
|
10
|
+
image: /img/examples/patient_form_extraction/cover.png
|
10
11
|
tags: [structured-data-extraction, data-mapping]
|
11
12
|
---
|
12
13
|
|
@@ -7,6 +7,7 @@ canonicalUrl: '/examples/postgres_source'
|
|
7
7
|
sidebar_custom_props:
|
8
8
|
image: /img/examples/postgres_source/cover.png
|
9
9
|
tags: [data-mapping, vector-index, postgres]
|
10
|
+
image: /img/examples/postgres_source/cover.png
|
10
11
|
tags: [data-mapping, vector-index, postgres]
|
11
12
|
---
|
12
13
|
import { GitHubButton, YouTubeButton, DocumentationButton } from '../../../src/components/GitHubButton';
|
@@ -0,0 +1,213 @@
|
|
1
|
+
---
|
2
|
+
title: Query Support
|
3
|
+
description: CocoIndex supports vector search and text search.
|
4
|
+
---
|
5
|
+
|
6
|
+
import Tabs from '@theme/Tabs';
|
7
|
+
import TabItem from '@theme/TabItem';
|
8
|
+
|
9
|
+
# CocoIndex Query Support
|
10
|
+
|
11
|
+
The main functionality of CocoIndex is indexing.
|
12
|
+
The goal of indexing is to enable efficient querying against your data.
|
13
|
+
You can use any libraries or frameworks of your choice to perform queries.
|
14
|
+
At the same time, CocoIndex provides seamless integration between indexing and querying workflows.
|
15
|
+
|
16
|
+
* You can share transformations between indexing and querying.
|
17
|
+
* You can define query handlers, so that you can easily run queries in tools like CocoInsight.
|
18
|
+
* You can easily retrieve table names when using CocoIndex's default naming conventions.
|
19
|
+
|
20
|
+
## Transform Flow
|
21
|
+
|
22
|
+
Sometimes a part of the transformation logic needs to be shared between indexing and querying,
|
23
|
+
e.g. when we build a vector index and query against it, the embedding computation needs to be consistent between indexing and querying.
|
24
|
+
|
25
|
+
In this case, you can:
|
26
|
+
|
27
|
+
1. Extract a sub-flow with the shared transformation logic into a standalone function.
|
28
|
+
* It takes one or more data slices as input.
|
29
|
+
* It returns one data slice as output.
|
30
|
+
* You need to annotate data types for both inputs and outputs as type parameter for `cocoindex.DataSlice[T]`. See [data types](./core/data_types.mdx) for more details about supported data types.
|
31
|
+
|
32
|
+
2. When you're defining your indexing flow, you can directly call the function.
|
33
|
+
The body will be executed, so that the transformation logic will be added as part of the indexing flow.
|
34
|
+
|
35
|
+
3. At query time, you usually want to directly run the function with specific input data, instead of letting it called as part of a long-lived indexing flow.
|
36
|
+
To do this, declare the function as a *transform flow*, by decorating it with `@cocoindex.transform_flow()`.
|
37
|
+
This will add `eval()` and `eval_async()` methods to the function, so that you can directly call with specific input data.
|
38
|
+
|
39
|
+
|
40
|
+
<Tabs>
|
41
|
+
<TabItem value="python" label="Python">
|
42
|
+
|
43
|
+
For example, based on the flow in [quickstart](getting_started/quickstart), you can extract the invocation of `SentenceTransformerEmbed` into a standalone function:
|
44
|
+
|
45
|
+
```python
|
46
|
+
@cocoindex.transform_flow()
|
47
|
+
def text_to_embedding(text: cocoindex.DataSlice[str]) -> cocoindex.DataSlice[NDArray[np.float32]]:
|
48
|
+
return text.transform(
|
49
|
+
cocoindex.functions.SentenceTransformerEmbed(
|
50
|
+
model="sentence-transformers/all-MiniLM-L6-v2"))
|
51
|
+
```
|
52
|
+
|
53
|
+
When you're defining your indexing flow, you can directly call the function:
|
54
|
+
|
55
|
+
```python
|
56
|
+
with doc["chunks"].row() as chunk:
|
57
|
+
chunk["embedding"] = text_to_embedding(chunk["text"])
|
58
|
+
```
|
59
|
+
|
60
|
+
or, using the `call()` method of the transform flow on the first argument, to make operations chainable:
|
61
|
+
|
62
|
+
```python
|
63
|
+
with doc["chunks"].row() as chunk:
|
64
|
+
chunk["embedding"] = chunk["text"].call(text_to_embedding)
|
65
|
+
```
|
66
|
+
|
67
|
+
Any time, you can call the `eval()` method with specific string, which will return a `NDArray[np.float32]`:
|
68
|
+
|
69
|
+
```python
|
70
|
+
print(text_to_embedding.eval("Hello, world!"))
|
71
|
+
```
|
72
|
+
|
73
|
+
If you're in an async context, please call the `eval_async()` method instead:
|
74
|
+
|
75
|
+
```python
|
76
|
+
print(await text_to_embedding.eval_async("Hello, world!"))
|
77
|
+
```
|
78
|
+
|
79
|
+
</TabItem>
|
80
|
+
</Tabs>
|
81
|
+
|
82
|
+
## Query Handler
|
83
|
+
|
84
|
+
Query handlers let you expose a simple function that takes a query string and returns structured results. They are discoverable by tools like CocoInsight so you can query your indexes without writing extra glue code.
|
85
|
+
|
86
|
+
- **What you write**: a plain Python function `def search(query: str) -> cocoindex.QueryOutput`.
|
87
|
+
- **How you register**: decorate it with `@<your_flow>.query_handler(...)` or call `flow.add_query_handler(...)` directly.
|
88
|
+
- **What you return**: a `cocoindex.QueryOutput(results=[...], query_info=...)`.
|
89
|
+
- **Optional metadata**: `QueryHandlerResultFields` tells tools which fields contain the embedding vector and score.
|
90
|
+
|
91
|
+
### Minimum Query Handler
|
92
|
+
|
93
|
+
A minimum query handler looks like this:
|
94
|
+
|
95
|
+
<Tabs>
|
96
|
+
<TabItem value="python" label="Python">
|
97
|
+
|
98
|
+
```python
|
99
|
+
@my_flow.query_handler(name="run_query") # Name is optional, use the function name by default
|
100
|
+
def run_query(query: str) -> cocoindex.QueryOutput:
|
101
|
+
# 1) Perform your query against the input `query`
|
102
|
+
...
|
103
|
+
|
104
|
+
# 2) Return structured results
|
105
|
+
return cocoindex.QueryOutput(results=[{"filename": "...", "text": "..."}])
|
106
|
+
```
|
107
|
+
|
108
|
+
</TabItem>
|
109
|
+
</Tabs>
|
110
|
+
|
111
|
+
Notes about the decorator:
|
112
|
+
|
113
|
+
- The handler can be sync or async.
|
114
|
+
- The decorator registers the handler as a query handler for the flow. It doesn't change the function signature: you can still call the function directly.
|
115
|
+
|
116
|
+
Your function returns a `cocoindex.QueryOutput`, with a `results` field, which is a list of dicts (or dataclass instances) representing query results.
|
117
|
+
Each element is a query result. All data types convertible to JSON are supported. Embeddings can be `list[float]` or numpy array.
|
118
|
+
|
119
|
+
A simple query handler like this will enable CocoInsight to display the query results for you to view easily.
|
120
|
+
|
121
|
+
### Query Handler with Additional Information
|
122
|
+
|
123
|
+
You can provide additional information by extra fields like this:
|
124
|
+
|
125
|
+
<Tabs>
|
126
|
+
<TabItem value="python" label="Python">
|
127
|
+
|
128
|
+
```python
|
129
|
+
@my_flow.query_handler(
|
130
|
+
name="run_query", # Name is optional, use the function name by default
|
131
|
+
result_fields=cocoindex.QueryHandlerResultFields(
|
132
|
+
embedding=["embedding"], # path to the vector field in each result
|
133
|
+
score="score", # numeric similarity score (higher is better)
|
134
|
+
)
|
135
|
+
)
|
136
|
+
def run_query(query: str) -> cocoindex.QueryOutput:
|
137
|
+
# 1) Compute embedding for the input query (often via a transform flow)
|
138
|
+
query_vector = text_to_embedding.eval(query)
|
139
|
+
|
140
|
+
# 2) Run your database/vector store query
|
141
|
+
...
|
142
|
+
|
143
|
+
# 3) Return structured results plus optional query_info
|
144
|
+
return cocoindex.QueryOutput(
|
145
|
+
results=[{"text": "...", "embedding": some_vec, "score": 0.92}],
|
146
|
+
query_info=cocoindex.QueryInfo(
|
147
|
+
embedding=query_vector,
|
148
|
+
similarity_metric=cocoindex.VectorSimilarityMetric.COSINE_SIMILARITY,
|
149
|
+
),
|
150
|
+
)
|
151
|
+
```
|
152
|
+
|
153
|
+
</TabItem>
|
154
|
+
</Tabs>
|
155
|
+
|
156
|
+
- `result_fields` within `query_handler` specifies field names in the query results returned by the query handler. This provides metadata for tools like CocoInsight to recognize structure of the query results, as specified by the following fields (all optional):
|
157
|
+
- `embedding` is a list of keys that navigates to the embedding in each result (use multiple in case of multiple embeddings, e.g. using different models).
|
158
|
+
- `score` should point to a numeric field where larger means more relevant.
|
159
|
+
|
160
|
+
- `QueryOutput.query_info` specifies information for the query itself, with the following fields (all optional):
|
161
|
+
- `embedding` is the embedding of the query.
|
162
|
+
- `similarity_metric` is the similarity metric used to query the index.
|
163
|
+
|
164
|
+
|
165
|
+
### Directly Register without Decorator
|
166
|
+
|
167
|
+
The above example can be written without decorator like this:
|
168
|
+
|
169
|
+
```python
|
170
|
+
def my_search(query: str) -> cocoindex.QueryOutput:
|
171
|
+
...
|
172
|
+
|
173
|
+
my_flow.add_query_handler(
|
174
|
+
name="run_query",
|
175
|
+
handler=my_search,
|
176
|
+
result_fields=cocoindex.QueryHandlerResultFields(embedding=["embedding"], score="score"),
|
177
|
+
)
|
178
|
+
```
|
179
|
+
|
180
|
+
Sometimes this provides more flexibility.
|
181
|
+
|
182
|
+
### Examples
|
183
|
+
|
184
|
+
You can see our following examples:
|
185
|
+
|
186
|
+
- [Text Embedding (PostgreSQL)](https://github.com/cocoindex-io/cocoindex/blob/main/examples/text_embedding/main.py)
|
187
|
+
- [Text Embedding (Qdrant)](https://github.com/cocoindex-io/cocoindex/blob/main/examples/text_embedding_qdrant/main.py)
|
188
|
+
- [Code Embedding](https://github.com/cocoindex-io/cocoindex/blob/main/examples/code_embedding/main.py)
|
189
|
+
|
190
|
+
|
191
|
+
## Get Target Native Names
|
192
|
+
|
193
|
+
In your indexing flow, when you export data to a target, you can specify the target name (e.g. a database table name, a collection name, the node label in property graph databases, etc.) explicitly,
|
194
|
+
or for some backends you can also omit it and let CocoIndex generate a default name for you.
|
195
|
+
For the latter case, CocoIndex provides a utility function `cocoindex.utils.get_target_default_name()` to get the default name.
|
196
|
+
It takes the following arguments:
|
197
|
+
|
198
|
+
* `flow` (type: `cocoindex.Flow`): The flow to get the default name for.
|
199
|
+
* `target_name` (type: `str`): The export target name, appeared in the `export()` call.
|
200
|
+
|
201
|
+
For example:
|
202
|
+
|
203
|
+
<Tabs>
|
204
|
+
<TabItem value="python" label="Python">
|
205
|
+
|
206
|
+
```python
|
207
|
+
table_name = cocoindex.utils.get_target_default_name(text_embedding_flow, "doc_embeddings")
|
208
|
+
query = f"SELECT filename, text FROM {table_name} ORDER BY embedding <=> %s DESC LIMIT 5"
|
209
|
+
...
|
210
|
+
```
|
211
|
+
|
212
|
+
</TabItem>
|
213
|
+
</Tabs>
|