├── .github ├── CODEOWNERS └── workflows │ └── ci.yml ├── .gitignore ├── .pre-commit-config.yaml ├── LICENSE ├── Makefile ├── README.md ├── assets └── meadow_image.png ├── examples ├── data │ ├── custom_text2sql_benchmark.json │ ├── sales.sql │ ├── sales_ambiguous_joins.sql │ ├── sales_example_schema.json │ └── sales_predictive.sql ├── demo.py ├── demo_user_feedback.py └── notebooks │ └── new_agent.ipynb ├── experiments └── text2sql │ ├── agent_factory.py │ ├── eval_user.py │ ├── evaluate.py │ ├── predict.py │ └── utils.py ├── meadow ├── __init__.py ├── agent │ ├── __init__.py │ ├── agent.py │ ├── controller.py │ ├── data_agents │ │ ├── attribute_detector.py │ │ ├── basic.py │ │ ├── column_generation.py │ │ ├── planner_constraints.py │ │ ├── schema_renamer.py │ │ ├── sql_decomposer.py │ │ ├── sql_planner.py │ │ ├── table_selector.py │ │ ├── text2sql.py │ │ └── text2sql_utils.py │ ├── executor │ │ ├── batch_llm.py │ │ ├── data_executors │ │ │ ├── empty_result_debugger.py │ │ │ └── sql_validate_reask.py │ │ ├── debugger.py │ │ ├── reask.py │ │ └── user_feedback.py │ ├── planner.py │ ├── schema.py │ ├── user.py │ └── utils.py ├── cache │ ├── __init__.py │ ├── cache.py │ ├── duckdb.py │ └── sqllite.py ├── client │ ├── __init__.py │ ├── api │ │ ├── anthropic.py │ │ ├── api_client.py │ │ ├── groq.py │ │ ├── openai.py │ │ ├── samba.py │ │ └── together.py │ ├── client.py │ └── schema.py ├── database │ ├── connector │ │ ├── connector.py │ │ ├── duckdb.py │ │ └── sqlite.py │ ├── database.py │ └── serializer.py └── history │ └── message_history.py ├── poetry.lock ├── pyproject.toml ├── run-precommit └── tests ├── __init__.py ├── cache ├── test_cache.py └── test_cache_implementations.py ├── client ├── test_anthropic.py ├── test_client.py ├── test_openai.py └── test_schema.py ├── conftest.py ├── database ├── connector │ ├── test_connector.py │ ├── test_duckdb.py │ └── test_sqlite.py ├── test_database.py └── test_serializer.py └── history └── test_message_history.py /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @laurelorr -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/README.md -------------------------------------------------------------------------------- /assets/meadow_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/assets/meadow_image.png -------------------------------------------------------------------------------- /examples/data/custom_text2sql_benchmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/data/custom_text2sql_benchmark.json -------------------------------------------------------------------------------- /examples/data/sales.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/data/sales.sql -------------------------------------------------------------------------------- /examples/data/sales_ambiguous_joins.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/data/sales_ambiguous_joins.sql -------------------------------------------------------------------------------- /examples/data/sales_example_schema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/data/sales_example_schema.json -------------------------------------------------------------------------------- /examples/data/sales_predictive.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/data/sales_predictive.sql -------------------------------------------------------------------------------- /examples/demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/demo.py -------------------------------------------------------------------------------- /examples/demo_user_feedback.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/demo_user_feedback.py -------------------------------------------------------------------------------- /examples/notebooks/new_agent.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/examples/notebooks/new_agent.ipynb -------------------------------------------------------------------------------- /experiments/text2sql/agent_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/experiments/text2sql/agent_factory.py -------------------------------------------------------------------------------- /experiments/text2sql/eval_user.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/experiments/text2sql/eval_user.py -------------------------------------------------------------------------------- /experiments/text2sql/evaluate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/experiments/text2sql/evaluate.py -------------------------------------------------------------------------------- /experiments/text2sql/predict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/experiments/text2sql/predict.py -------------------------------------------------------------------------------- /experiments/text2sql/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/experiments/text2sql/utils.py -------------------------------------------------------------------------------- /meadow/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/__init__.py -------------------------------------------------------------------------------- /meadow/agent/__init__.py: -------------------------------------------------------------------------------- 1 | """Agent init.""" 2 | -------------------------------------------------------------------------------- /meadow/agent/agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/agent.py -------------------------------------------------------------------------------- /meadow/agent/controller.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/controller.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/attribute_detector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/attribute_detector.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/basic.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/column_generation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/column_generation.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/planner_constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/planner_constraints.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/schema_renamer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/schema_renamer.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/sql_decomposer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/sql_decomposer.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/sql_planner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/sql_planner.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/table_selector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/table_selector.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/text2sql.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/text2sql.py -------------------------------------------------------------------------------- /meadow/agent/data_agents/text2sql_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/data_agents/text2sql_utils.py -------------------------------------------------------------------------------- /meadow/agent/executor/batch_llm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/batch_llm.py -------------------------------------------------------------------------------- /meadow/agent/executor/data_executors/empty_result_debugger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/data_executors/empty_result_debugger.py -------------------------------------------------------------------------------- /meadow/agent/executor/data_executors/sql_validate_reask.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/data_executors/sql_validate_reask.py -------------------------------------------------------------------------------- /meadow/agent/executor/debugger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/debugger.py -------------------------------------------------------------------------------- /meadow/agent/executor/reask.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/reask.py -------------------------------------------------------------------------------- /meadow/agent/executor/user_feedback.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/executor/user_feedback.py -------------------------------------------------------------------------------- /meadow/agent/planner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/planner.py -------------------------------------------------------------------------------- /meadow/agent/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/schema.py -------------------------------------------------------------------------------- /meadow/agent/user.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/user.py -------------------------------------------------------------------------------- /meadow/agent/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/agent/utils.py -------------------------------------------------------------------------------- /meadow/cache/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/cache/__init__.py -------------------------------------------------------------------------------- /meadow/cache/cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/cache/cache.py -------------------------------------------------------------------------------- /meadow/cache/duckdb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/cache/duckdb.py -------------------------------------------------------------------------------- /meadow/cache/sqllite.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/cache/sqllite.py -------------------------------------------------------------------------------- /meadow/client/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/__init__.py -------------------------------------------------------------------------------- /meadow/client/api/anthropic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/anthropic.py -------------------------------------------------------------------------------- /meadow/client/api/api_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/api_client.py -------------------------------------------------------------------------------- /meadow/client/api/groq.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/groq.py -------------------------------------------------------------------------------- /meadow/client/api/openai.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/openai.py -------------------------------------------------------------------------------- /meadow/client/api/samba.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/samba.py -------------------------------------------------------------------------------- /meadow/client/api/together.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/api/together.py -------------------------------------------------------------------------------- /meadow/client/client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/client.py -------------------------------------------------------------------------------- /meadow/client/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/client/schema.py -------------------------------------------------------------------------------- /meadow/database/connector/connector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/database/connector/connector.py -------------------------------------------------------------------------------- /meadow/database/connector/duckdb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/database/connector/duckdb.py -------------------------------------------------------------------------------- /meadow/database/connector/sqlite.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/database/connector/sqlite.py -------------------------------------------------------------------------------- /meadow/database/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/database/database.py -------------------------------------------------------------------------------- /meadow/database/serializer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/database/serializer.py -------------------------------------------------------------------------------- /meadow/history/message_history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/meadow/history/message_history.py -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/pyproject.toml -------------------------------------------------------------------------------- /run-precommit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/run-precommit -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | """Test init.""" 2 | -------------------------------------------------------------------------------- /tests/cache/test_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/cache/test_cache.py -------------------------------------------------------------------------------- /tests/cache/test_cache_implementations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/cache/test_cache_implementations.py -------------------------------------------------------------------------------- /tests/client/test_anthropic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/client/test_anthropic.py -------------------------------------------------------------------------------- /tests/client/test_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/client/test_client.py -------------------------------------------------------------------------------- /tests/client/test_openai.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/client/test_openai.py -------------------------------------------------------------------------------- /tests/client/test_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/client/test_schema.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/database/connector/test_connector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/database/connector/test_connector.py -------------------------------------------------------------------------------- /tests/database/connector/test_duckdb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/database/connector/test_duckdb.py -------------------------------------------------------------------------------- /tests/database/connector/test_sqlite.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/database/connector/test_sqlite.py -------------------------------------------------------------------------------- /tests/database/test_database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/database/test_database.py -------------------------------------------------------------------------------- /tests/database/test_serializer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/database/test_serializer.py -------------------------------------------------------------------------------- /tests/history/test_message_history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NumbersStationAI/meadow/HEAD/tests/history/test_message_history.py --------------------------------------------------------------------------------