diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index b46822e..50c1ca2 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -25,11 +25,11 @@ jobs: - name: Build documentation. run: | - echo ${{ secrets.GH_TOKEN }} >> src/curate_gpt/token.txt + echo ${{ secrets.GH_TOKEN }} >> src/curategpt/token.txt mkdir gh-pages touch gh-pages/.nojekyll cd docs/ - poetry run sphinx-apidoc -o . ../src/curate_gpt/ --ext-autodoc -f + poetry run sphinx-apidoc -o . ../src/curategpt/ --ext-autodoc -f poetry run sphinx-build -b html . _build cp -r _build/* ../gh-pages/ diff --git a/Makefile b/Makefile index c5fa393..4434d77 100644 --- a/Makefile +++ b/Makefile @@ -22,13 +22,13 @@ ont-%: app: - $(RUN) streamlit run src/curate_gpt/app/app.py --logger.level=debug + $(RUN) streamlit run src/curategpt/app/app.py --logger.level=debug ## -- Docs -- apidoc: - $(RUN) sphinx-apidoc -f -M -o docs/ src/curate_gpt/ && cd docs && $(RUN) make html + $(RUN) sphinx-apidoc -f -M -o docs/ src/curategpt/ && cd docs && $(RUN) make html %-doctest: % $(RUN) python -m doctest --option ELLIPSIS --option NORMALIZE_WHITESPACE $< diff --git a/adhoc.Makefile b/adhoc.Makefile index be0acb9..30841a2 100644 --- a/adhoc.Makefile +++ b/adhoc.Makefile @@ -2,7 +2,7 @@ RUN = poetry run DB_PATH = db data/nmdc.json: - $(RUN) python -m curate_gpt.adhoc.nmdc_sample_downloader --no-stream --format json > $@ + $(RUN) python -m curategpt.adhoc.nmdc_sample_downloader --no-stream --format json > $@ data/clingen.json: diff --git a/docs/conf.py b/docs/conf.py index 98c461b..ff1bede 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -5,12 +5,12 @@ import os from datetime import date -from curate_gpt import __version__ +from curategpt import __version__ # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information -project = 'curate_gpt' +project = 'curategpt' copyright = f"{date.today().year}, Author 1 " author = 'Author 1 ' release = __version__ diff --git a/docs/index.rst b/docs/index.rst index 90f1645..59d68e2 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -10,12 +10,12 @@ Welcome to curategpt's documentation! :maxdepth: 2 :caption: Contents: - curate_gpt.store - curate_gpt.wrappers - curate_gpt.agents - curate_gpt.extract - curate_gpt.utils - curate_gpt.formatters + curategpt.store + curategpt.wrappers + curategpt.agents + curategpt.extract + curategpt.utils + curategpt.formatters modules diff --git a/poetry.lock b/poetry.lock index ee4a73c..bd298ac 100644 --- a/poetry.lock +++ b/poetry.lock @@ -371,12 +371,12 @@ lxml = ["lxml"] [[package]] name = "bibtexparser" -version = "1.4.1" +version = "1.4.2" description = "Bibtex parser for python 3" optional = false python-versions = "*" files = [ - {file = "bibtexparser-1.4.1.tar.gz", hash = "sha256:e00e29e24676c4808e0b4333b37bb55cca9cbb7871a56f63058509281588d789"}, + {file = "bibtexparser-1.4.2.tar.gz", hash = "sha256:dd5d54a1ec6d27b6485ce2f6b9aa514b183fb2b8d4bf5f19333a906eedaf8eaa"}, ] [package.dependencies] @@ -1268,12 +1268,13 @@ files = [ [[package]] name = "durationpy" -version = "0.7" +version = "0.9" description = "Module for converting between datetime.timedelta and Go's Duration strings." optional = false python-versions = "*" files = [ - {file = "durationpy-0.7.tar.gz", hash = "sha256:8447c43df4f1a0b434e70c15a38d77f5c9bd17284bfc1ff1d430f233d5083732"}, + {file = "durationpy-0.9-py3-none-any.whl", hash = "sha256:e65359a7af5cedad07fb77a2dd3f390f8eb0b74cb845589fa6c057086834dd38"}, + {file = "durationpy-0.9.tar.gz", hash = "sha256:fd3feb0a69a0057d582ef643c355c40d2fa1c942191f914d12203b1a01ac722a"}, ] [[package]] @@ -1928,61 +1929,70 @@ test = ["objgraph", "psutil"] [[package]] name = "grpcio" -version = "1.66.1" +version = "1.66.2" description = "HTTP/2-based RPC framework" optional = false python-versions = ">=3.8" files = [ - {file = "grpcio-1.66.1-cp310-cp310-linux_armv7l.whl", hash = "sha256:4877ba180591acdf127afe21ec1c7ff8a5ecf0fe2600f0d3c50e8c4a1cbc6492"}, - {file = "grpcio-1.66.1-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:3750c5a00bd644c75f4507f77a804d0189d97a107eb1481945a0cf3af3e7a5ac"}, - {file = "grpcio-1.66.1-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:a013c5fbb12bfb5f927444b477a26f1080755a931d5d362e6a9a720ca7dbae60"}, - {file = "grpcio-1.66.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b1b24c23d51a1e8790b25514157d43f0a4dce1ac12b3f0b8e9f66a5e2c4c132f"}, - {file = "grpcio-1.66.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7ffb8ea674d68de4cac6f57d2498fef477cef582f1fa849e9f844863af50083"}, - {file = "grpcio-1.66.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:307b1d538140f19ccbd3aed7a93d8f71103c5d525f3c96f8616111614b14bf2a"}, - {file = "grpcio-1.66.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1c17ebcec157cfb8dd445890a03e20caf6209a5bd4ac5b040ae9dbc59eef091d"}, - {file = "grpcio-1.66.1-cp310-cp310-win32.whl", hash = "sha256:ef82d361ed5849d34cf09105d00b94b6728d289d6b9235513cb2fcc79f7c432c"}, - {file = "grpcio-1.66.1-cp310-cp310-win_amd64.whl", hash = "sha256:292a846b92cdcd40ecca46e694997dd6b9be6c4c01a94a0dfb3fcb75d20da858"}, - {file = "grpcio-1.66.1-cp311-cp311-linux_armv7l.whl", hash = "sha256:c30aeceeaff11cd5ddbc348f37c58bcb96da8d5aa93fed78ab329de5f37a0d7a"}, - {file = "grpcio-1.66.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8a1e224ce6f740dbb6b24c58f885422deebd7eb724aff0671a847f8951857c26"}, - {file = "grpcio-1.66.1-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:a66fe4dc35d2330c185cfbb42959f57ad36f257e0cc4557d11d9f0a3f14311df"}, - {file = "grpcio-1.66.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e3ba04659e4fce609de2658fe4dbf7d6ed21987a94460f5f92df7579fd5d0e22"}, - {file = "grpcio-1.66.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4573608e23f7e091acfbe3e84ac2045680b69751d8d67685ffa193a4429fedb1"}, - {file = "grpcio-1.66.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7e06aa1f764ec8265b19d8f00140b8c4b6ca179a6dc67aa9413867c47e1fb04e"}, - {file = "grpcio-1.66.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3885f037eb11f1cacc41f207b705f38a44b69478086f40608959bf5ad85826dd"}, - {file = "grpcio-1.66.1-cp311-cp311-win32.whl", hash = "sha256:97ae7edd3f3f91480e48ede5d3e7d431ad6005bfdbd65c1b56913799ec79e791"}, - {file = "grpcio-1.66.1-cp311-cp311-win_amd64.whl", hash = "sha256:cfd349de4158d797db2bd82d2020554a121674e98fbe6b15328456b3bf2495bb"}, - {file = "grpcio-1.66.1-cp312-cp312-linux_armv7l.whl", hash = "sha256:a92c4f58c01c77205df6ff999faa008540475c39b835277fb8883b11cada127a"}, - {file = "grpcio-1.66.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:fdb14bad0835914f325349ed34a51940bc2ad965142eb3090081593c6e347be9"}, - {file = "grpcio-1.66.1-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:f03a5884c56256e08fd9e262e11b5cfacf1af96e2ce78dc095d2c41ccae2c80d"}, - {file = "grpcio-1.66.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2ca2559692d8e7e245d456877a85ee41525f3ed425aa97eb7a70fc9a79df91a0"}, - {file = "grpcio-1.66.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:84ca1be089fb4446490dd1135828bd42a7c7f8421e74fa581611f7afdf7ab761"}, - {file = "grpcio-1.66.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:d639c939ad7c440c7b2819a28d559179a4508783f7e5b991166f8d7a34b52815"}, - {file = "grpcio-1.66.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b9feb4e5ec8dc2d15709f4d5fc367794d69277f5d680baf1910fc9915c633524"}, - {file = "grpcio-1.66.1-cp312-cp312-win32.whl", hash = "sha256:7101db1bd4cd9b880294dec41a93fcdce465bdbb602cd8dc5bd2d6362b618759"}, - {file = "grpcio-1.66.1-cp312-cp312-win_amd64.whl", hash = "sha256:b0aa03d240b5539648d996cc60438f128c7f46050989e35b25f5c18286c86734"}, - {file = "grpcio-1.66.1-cp38-cp38-linux_armv7l.whl", hash = "sha256:ecfe735e7a59e5a98208447293ff8580e9db1e890e232b8b292dc8bd15afc0d2"}, - {file = "grpcio-1.66.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:4825a3aa5648010842e1c9d35a082187746aa0cdbf1b7a2a930595a94fb10fce"}, - {file = "grpcio-1.66.1-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:f517fd7259fe823ef3bd21e508b653d5492e706e9f0ef82c16ce3347a8a5620c"}, - {file = "grpcio-1.66.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1fe60d0772831d96d263b53d83fb9a3d050a94b0e94b6d004a5ad111faa5b5b"}, - {file = "grpcio-1.66.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:31a049daa428f928f21090403e5d18ea02670e3d5d172581670be006100db9ef"}, - {file = "grpcio-1.66.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6f914386e52cbdeb5d2a7ce3bf1fdfacbe9d818dd81b6099a05b741aaf3848bb"}, - {file = "grpcio-1.66.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bff2096bdba686019fb32d2dde45b95981f0d1490e054400f70fc9a8af34b49d"}, - {file = "grpcio-1.66.1-cp38-cp38-win32.whl", hash = "sha256:aa8ba945c96e73de29d25331b26f3e416e0c0f621e984a3ebdb2d0d0b596a3b3"}, - {file = "grpcio-1.66.1-cp38-cp38-win_amd64.whl", hash = "sha256:161d5c535c2bdf61b95080e7f0f017a1dfcb812bf54093e71e5562b16225b4ce"}, - {file = "grpcio-1.66.1-cp39-cp39-linux_armv7l.whl", hash = "sha256:d0cd7050397b3609ea51727b1811e663ffda8bda39c6a5bb69525ef12414b503"}, - {file = "grpcio-1.66.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0e6c9b42ded5d02b6b1fea3a25f036a2236eeb75d0579bfd43c0018c88bf0a3e"}, - {file = "grpcio-1.66.1-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:c9f80f9fad93a8cf71c7f161778ba47fd730d13a343a46258065c4deb4b550c0"}, - {file = "grpcio-1.66.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5dd67ed9da78e5121efc5c510f0122a972216808d6de70953a740560c572eb44"}, - {file = "grpcio-1.66.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:48b0d92d45ce3be2084b92fb5bae2f64c208fea8ceed7fccf6a7b524d3c4942e"}, - {file = "grpcio-1.66.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:4d813316d1a752be6f5c4360c49f55b06d4fe212d7df03253dfdae90c8a402bb"}, - {file = "grpcio-1.66.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9c9bebc6627873ec27a70fc800f6083a13c70b23a5564788754b9ee52c5aef6c"}, - {file = "grpcio-1.66.1-cp39-cp39-win32.whl", hash = "sha256:30a1c2cf9390c894c90bbc70147f2372130ad189cffef161f0432d0157973f45"}, - {file = "grpcio-1.66.1-cp39-cp39-win_amd64.whl", hash = "sha256:17663598aadbedc3cacd7bbde432f541c8e07d2496564e22b214b22c7523dac8"}, - {file = "grpcio-1.66.1.tar.gz", hash = "sha256:35334f9c9745add3e357e3372756fd32d925bd52c41da97f4dfdafbde0bf0ee2"}, -] - -[package.extras] -protobuf = ["grpcio-tools (>=1.66.1)"] + {file = "grpcio-1.66.2-cp310-cp310-linux_armv7l.whl", hash = "sha256:fe96281713168a3270878255983d2cb1a97e034325c8c2c25169a69289d3ecfa"}, + {file = "grpcio-1.66.2-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:73fc8f8b9b5c4a03e802b3cd0c18b2b06b410d3c1dcbef989fdeb943bd44aff7"}, + {file = "grpcio-1.66.2-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:03b0b307ba26fae695e067b94cbb014e27390f8bc5ac7a3a39b7723fed085604"}, + {file = "grpcio-1.66.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d69ce1f324dc2d71e40c9261d3fdbe7d4c9d60f332069ff9b2a4d8a257c7b2b"}, + {file = "grpcio-1.66.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05bc2ceadc2529ab0b227b1310d249d95d9001cd106aa4d31e8871ad3c428d73"}, + {file = "grpcio-1.66.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8ac475e8da31484efa25abb774674d837b343afb78bb3bcdef10f81a93e3d6bf"}, + {file = "grpcio-1.66.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0be4e0490c28da5377283861bed2941d1d20ec017ca397a5df4394d1c31a9b50"}, + {file = "grpcio-1.66.2-cp310-cp310-win32.whl", hash = "sha256:4e504572433f4e72b12394977679161d495c4c9581ba34a88d843eaf0f2fbd39"}, + {file = "grpcio-1.66.2-cp310-cp310-win_amd64.whl", hash = "sha256:2018b053aa15782db2541ca01a7edb56a0bf18c77efed975392583725974b249"}, + {file = "grpcio-1.66.2-cp311-cp311-linux_armv7l.whl", hash = "sha256:2335c58560a9e92ac58ff2bc5649952f9b37d0735608242973c7a8b94a6437d8"}, + {file = "grpcio-1.66.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:45a3d462826f4868b442a6b8fdbe8b87b45eb4f5b5308168c156b21eca43f61c"}, + {file = "grpcio-1.66.2-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:a9539f01cb04950fd4b5ab458e64a15f84c2acc273670072abe49a3f29bbad54"}, + {file = "grpcio-1.66.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ce89f5876662f146d4c1f695dda29d4433a5d01c8681fbd2539afff535da14d4"}, + {file = "grpcio-1.66.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d25a14af966438cddf498b2e338f88d1c9706f3493b1d73b93f695c99c5f0e2a"}, + {file = "grpcio-1.66.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:6001e575b8bbd89eee11960bb640b6da6ae110cf08113a075f1e2051cc596cae"}, + {file = "grpcio-1.66.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4ea1d062c9230278793820146c95d038dc0f468cbdd172eec3363e42ff1c7d01"}, + {file = "grpcio-1.66.2-cp311-cp311-win32.whl", hash = "sha256:38b68498ff579a3b1ee8f93a05eb48dc2595795f2f62716e797dc24774c1aaa8"}, + {file = "grpcio-1.66.2-cp311-cp311-win_amd64.whl", hash = "sha256:6851de821249340bdb100df5eacfecfc4e6075fa85c6df7ee0eb213170ec8e5d"}, + {file = "grpcio-1.66.2-cp312-cp312-linux_armv7l.whl", hash = "sha256:802d84fd3d50614170649853d121baaaa305de7b65b3e01759247e768d691ddf"}, + {file = "grpcio-1.66.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:80fd702ba7e432994df208f27514280b4b5c6843e12a48759c9255679ad38db8"}, + {file = "grpcio-1.66.2-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:12fda97ffae55e6526825daf25ad0fa37483685952b5d0f910d6405c87e3adb6"}, + {file = "grpcio-1.66.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:950da58d7d80abd0ea68757769c9db0a95b31163e53e5bb60438d263f4bed7b7"}, + {file = "grpcio-1.66.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e636ce23273683b00410f1971d209bf3689238cf5538d960adc3cdfe80dd0dbd"}, + {file = "grpcio-1.66.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:a917d26e0fe980b0ac7bfcc1a3c4ad6a9a4612c911d33efb55ed7833c749b0ee"}, + {file = "grpcio-1.66.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49f0ca7ae850f59f828a723a9064cadbed90f1ece179d375966546499b8a2c9c"}, + {file = "grpcio-1.66.2-cp312-cp312-win32.whl", hash = "sha256:31fd163105464797a72d901a06472860845ac157389e10f12631025b3e4d0453"}, + {file = "grpcio-1.66.2-cp312-cp312-win_amd64.whl", hash = "sha256:ff1f7882e56c40b0d33c4922c15dfa30612f05fb785074a012f7cda74d1c3679"}, + {file = "grpcio-1.66.2-cp313-cp313-linux_armv7l.whl", hash = "sha256:3b00efc473b20d8bf83e0e1ae661b98951ca56111feb9b9611df8efc4fe5d55d"}, + {file = "grpcio-1.66.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1caa38fb22a8578ab8393da99d4b8641e3a80abc8fd52646f1ecc92bcb8dee34"}, + {file = "grpcio-1.66.2-cp313-cp313-manylinux_2_17_aarch64.whl", hash = "sha256:c408f5ef75cfffa113cacd8b0c0e3611cbfd47701ca3cdc090594109b9fcbaed"}, + {file = "grpcio-1.66.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c806852deaedee9ce8280fe98955c9103f62912a5b2d5ee7e3eaa284a6d8d8e7"}, + {file = "grpcio-1.66.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f145cc21836c332c67baa6fc81099d1d27e266401565bf481948010d6ea32d46"}, + {file = "grpcio-1.66.2-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:73e3b425c1e155730273f73e419de3074aa5c5e936771ee0e4af0814631fb30a"}, + {file = "grpcio-1.66.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:9c509a4f78114cbc5f0740eb3d7a74985fd2eff022971bc9bc31f8bc93e66a3b"}, + {file = "grpcio-1.66.2-cp313-cp313-win32.whl", hash = "sha256:20657d6b8cfed7db5e11b62ff7dfe2e12064ea78e93f1434d61888834bc86d75"}, + {file = "grpcio-1.66.2-cp313-cp313-win_amd64.whl", hash = "sha256:fb70487c95786e345af5e854ffec8cb8cc781bcc5df7930c4fbb7feaa72e1cdf"}, + {file = "grpcio-1.66.2-cp38-cp38-linux_armv7l.whl", hash = "sha256:a18e20d8321c6400185b4263e27982488cb5cdd62da69147087a76a24ef4e7e3"}, + {file = "grpcio-1.66.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:02697eb4a5cbe5a9639f57323b4c37bcb3ab2d48cec5da3dc2f13334d72790dd"}, + {file = "grpcio-1.66.2-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:99a641995a6bc4287a6315989ee591ff58507aa1cbe4c2e70d88411c4dcc0839"}, + {file = "grpcio-1.66.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ed71e81782966ffead60268bbda31ea3f725ebf8aa73634d5dda44f2cf3fb9c"}, + {file = "grpcio-1.66.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbd27c24a4cc5e195a7f56cfd9312e366d5d61b86e36d46bbe538457ea6eb8dd"}, + {file = "grpcio-1.66.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d9a9724a156c8ec6a379869b23ba3323b7ea3600851c91489b871e375f710bc8"}, + {file = "grpcio-1.66.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d8d4732cc5052e92cea2f78b233c2e2a52998ac40cd651f40e398893ad0d06ec"}, + {file = "grpcio-1.66.2-cp38-cp38-win32.whl", hash = "sha256:7b2c86457145ce14c38e5bf6bdc19ef88e66c5fee2c3d83285c5aef026ba93b3"}, + {file = "grpcio-1.66.2-cp38-cp38-win_amd64.whl", hash = "sha256:e88264caad6d8d00e7913996030bac8ad5f26b7411495848cc218bd3a9040b6c"}, + {file = "grpcio-1.66.2-cp39-cp39-linux_armv7l.whl", hash = "sha256:c400ba5675b67025c8a9f48aa846f12a39cf0c44df5cd060e23fda5b30e9359d"}, + {file = "grpcio-1.66.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:66a0cd8ba6512b401d7ed46bb03f4ee455839957f28b8d61e7708056a806ba6a"}, + {file = "grpcio-1.66.2-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:06de8ec0bd71be123eec15b0e0d457474931c2c407869b6c349bd9bed4adbac3"}, + {file = "grpcio-1.66.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fb57870449dfcfac428afbb5a877829fcb0d6db9d9baa1148705739e9083880e"}, + {file = "grpcio-1.66.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b672abf90a964bfde2d0ecbce30f2329a47498ba75ce6f4da35a2f4532b7acbc"}, + {file = "grpcio-1.66.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ad2efdbe90c73b0434cbe64ed372e12414ad03c06262279b104a029d1889d13e"}, + {file = "grpcio-1.66.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9c3a99c519f4638e700e9e3f83952e27e2ea10873eecd7935823dab0c1c9250e"}, + {file = "grpcio-1.66.2-cp39-cp39-win32.whl", hash = "sha256:78fa51ebc2d9242c0fc5db0feecc57a9943303b46664ad89921f5079e2e4ada7"}, + {file = "grpcio-1.66.2-cp39-cp39-win_amd64.whl", hash = "sha256:728bdf36a186e7f51da73be7f8d09457a03061be848718d0edf000e709418987"}, + {file = "grpcio-1.66.2.tar.gz", hash = "sha256:563588c587b75c34b928bc428548e5b00ea38c46972181a4d8b75ba7e3f24231"}, +] + +[package.extras] +protobuf = ["grpcio-tools (>=1.66.2)"] [[package]] name = "gspread" @@ -3228,13 +3238,13 @@ regex = ["regex"] [[package]] name = "linkml" -version = "1.8.3" +version = "1.8.4" description = "Linked Open Data Modeling Language" optional = false python-versions = "<4.0.0,>=3.8.1" files = [ - {file = "linkml-1.8.3-py3-none-any.whl", hash = "sha256:ced1af3055312d15335cfe8846847c0491519c9af28cce5ebd8e4e26e4361754"}, - {file = "linkml-1.8.3.tar.gz", hash = "sha256:6bf65f3d6c4ce9e88af0fda71b954ae4c6f5e885f8b4d74c1090380d565e76ba"}, + {file = "linkml-1.8.4-py3-none-any.whl", hash = "sha256:9fa26d7e522dd98568d0313e363abd67c2b17a671f31595c9e53beaec27b7214"}, + {file = "linkml-1.8.4.tar.gz", hash = "sha256:a1918d226ab5c268e260ddc7cfa6edb53d7faab3fb0144efef5fad572b052c36"}, ] [package.dependencies] @@ -3265,8 +3275,9 @@ watchdog = ">=0.9.0" [package.extras] black = ["black (>=24.0.0)"] +numpydantic = ["numpydantic (>=1.6.1)"] shacl = ["pyshacl (>=0.25.0,<0.26.0)"] -tests = ["black (>=24.0.0)", "pyshacl (>=0.25.0,<0.26.0)"] +tests = ["black (>=24.0.0)", "numpydantic (>=1.6.1)", "pyshacl (>=0.25.0,<0.26.0)"] [[package]] name = "linkml-dataops" @@ -3305,13 +3316,13 @@ pydantic = "*" [[package]] name = "linkml-runtime" -version = "1.8.2" +version = "1.8.3" description = "Runtime environment for LinkML, the Linked open data modeling language" optional = false python-versions = "<4.0,>=3.8" files = [ - {file = "linkml_runtime-1.8.2-py3-none-any.whl", hash = "sha256:a66d7b5b82cb57b2d6c603c75ca22db4bae0409e0fb2b9e7835f921a23716096"}, - {file = "linkml_runtime-1.8.2.tar.gz", hash = "sha256:f5067aeeb96c8d3ca1761b55b82d927af88d810459d533fb1f7876a90224b130"}, + {file = "linkml_runtime-1.8.3-py3-none-any.whl", hash = "sha256:0750920f1348fffa903d99e7b5834ce425a2a538285aff9068dbd96d05caabd1"}, + {file = "linkml_runtime-1.8.3.tar.gz", hash = "sha256:5b7f682eef54aaf0a59c50eeacdb11463b43b124a044caf496cde59936ac05c8"}, ] [package.dependencies] @@ -3928,13 +3939,13 @@ testing-docutils = ["pygments", "pytest (>=8,<9)", "pytest-param-files (>=0.6.0, [[package]] name = "narwhals" -version = "1.8.4" +version = "1.9.0" description = "Extremely lightweight compatibility layer between dataframe libraries" optional = false python-versions = ">=3.8" files = [ - {file = "narwhals-1.8.4-py3-none-any.whl", hash = "sha256:ccd1df55542d4406db3190ec9e98b181b19cd85a8a7eaf98472fb7b9a9b3b260"}, - {file = "narwhals-1.8.4.tar.gz", hash = "sha256:d5f018895f4e8209d91726a4598c73d05fbfa4c7a4c4a6fc0fba9715dc88730e"}, + {file = "narwhals-1.9.0-py3-none-any.whl", hash = "sha256:914cde513487341fe1e3b8cb09d3b79083530141c570e45d42150796b8d87a01"}, + {file = "narwhals-1.9.0.tar.gz", hash = "sha256:bfd8ab5abb87cfeca9cc72af4af47bf9d73a2f0fda97cffa2223a535bc65b5e5"}, ] [package.extras] @@ -4284,14 +4295,14 @@ files = [ [[package]] name = "nvidia-nvjitlink-cu12" -version = "12.6.68" +version = "12.6.77" description = "Nvidia JIT LTO Library" optional = false python-versions = ">=3" files = [ - {file = "nvidia_nvjitlink_cu12-12.6.68-py3-none-manylinux2014_aarch64.whl", hash = "sha256:b3fd0779845f68b92063ab1393abab1ed0a23412fc520df79a8190d098b5cd6b"}, - {file = "nvidia_nvjitlink_cu12-12.6.68-py3-none-manylinux2014_x86_64.whl", hash = "sha256:125a6c2a44e96386dda634e13d944e60b07a0402d391a070e8fb4104b34ea1ab"}, - {file = "nvidia_nvjitlink_cu12-12.6.68-py3-none-win_amd64.whl", hash = "sha256:a55744c98d70317c5e23db14866a8cc2b733f7324509e941fc96276f9f37801d"}, + {file = "nvidia_nvjitlink_cu12-12.6.77-py3-none-manylinux2014_aarch64.whl", hash = "sha256:3bf10d85bb1801e9c894c6e197e44dd137d2a0a9e43f8450e9ad13f2df0dd52d"}, + {file = "nvidia_nvjitlink_cu12-12.6.77-py3-none-manylinux2014_x86_64.whl", hash = "sha256:9ae346d16203ae4ea513be416495167a0101d33d2d14935aa9c1829a3fb45142"}, + {file = "nvidia_nvjitlink_cu12-12.6.77-py3-none-win_amd64.whl", hash = "sha256:410718cd44962bed862a31dd0318620f6f9a8b28a6291967bcfcb446a6516771"}, ] [[package]] @@ -4307,13 +4318,13 @@ files = [ [[package]] name = "oaklib" -version = "0.6.16" +version = "0.6.17" description = "Ontology Access Kit: Python library for common ontology operations over a variety of backends" optional = false python-versions = "<4.0.0,>=3.9" files = [ - {file = "oaklib-0.6.16-py3-none-any.whl", hash = "sha256:173943c2123ea1a53aa158d053b6f48b3fd609c8ff90de80cc94e58f3178288b"}, - {file = "oaklib-0.6.16.tar.gz", hash = "sha256:7c95ae53ff1c844e79a61c37b37c4a6328a1759e55702a58d779fb934a678db1"}, + {file = "oaklib-0.6.17-py3-none-any.whl", hash = "sha256:7b5ad9e6afab71c282c753f0f902606074d6fa176ed1b0e074594c0915de8fc4"}, + {file = "oaklib-0.6.17.tar.gz", hash = "sha256:db3472a798de1f338f0ec113cc1e2757fec26953e6e544e6253a052aab23cc42"}, ] [package.dependencies] @@ -4453,13 +4464,13 @@ tests = ["coverage", "pytest", "unittest-templates"] [[package]] name = "openai" -version = "1.50.1" +version = "1.51.0" description = "The official Python library for the openai API" optional = false python-versions = ">=3.7.1" files = [ - {file = "openai-1.50.1-py3-none-any.whl", hash = "sha256:7967fc8372d5e005ad61514586fb286d593facafccedbee00416bc38ee07c2e6"}, - {file = "openai-1.50.1.tar.gz", hash = "sha256:80cbdf275488894c70bfbad711dbba6f31ea71d579b97e364bfd99cdf030158e"}, + {file = "openai-1.51.0-py3-none-any.whl", hash = "sha256:d9affafb7e51e5a27dce78589d4964ce4d6f6d560307265933a94b2e3f3c5d2c"}, + {file = "openai-1.51.0.tar.gz", hash = "sha256:8dc4f9d75ccdd5466fc8c99a952186eddceb9fd6ba694044773f3736a847149d"}, ] [package.dependencies] @@ -5527,70 +5538,70 @@ tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] [[package]] name = "pymongo" -version = "4.9.1" +version = "4.10.1" description = "Python driver for MongoDB " optional = false python-versions = ">=3.8" files = [ - {file = "pymongo-4.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dc3d070d746ab79e9b393a5c236df20e56607389af2b79bf1bfe9a841117558e"}, - {file = "pymongo-4.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fe709d05654c12fc513617c8d5c8d05b7e9cf1d5d94ada68add4e89530c867d2"}, - {file = "pymongo-4.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa4493f304b33c5d2ecee3055c98889ac6724d56f5f922d47420a45d0d4099c9"}, - {file = "pymongo-4.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f8e8b8deba6a4bff3dd5421071083219521c74d2acae0322de5c06f1a66c56af"}, - {file = "pymongo-4.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e3645aff8419ca60f9ccd08966b2f6b0d78053f9f98a814d025426f1d874c19a"}, - {file = "pymongo-4.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51dbc6251c6783dfcc7d657c346986d8bad7210989b2fe15de16db5204a8e7ae"}, - {file = "pymongo-4.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d7aa9cc2d92e73bdb036c578ba019da94ea165eb147e691cd910a6fab7ce3b7"}, - {file = "pymongo-4.9.1-cp310-cp310-win32.whl", hash = "sha256:8b632e01617f2608880f7b9926f54a5f5ebb51631996e0540fff7fc7980663c9"}, - {file = "pymongo-4.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:f05e34d401be871d7c87cb10727d49315444e4ded07ff876a595e4c23b7436da"}, - {file = "pymongo-4.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6bb3d5282278594753089dc7da48bfae4a7f337a2dd4d397eabb591c649e58d0"}, - {file = "pymongo-4.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8f0d5258bc85a4e6b5bcae8160628168e71ec4625a58ceb53327c3280a0b6914"}, - {file = "pymongo-4.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:96462fb2175f740701d229f52018ea6e4adc4148c4112e6628bb359dd534a3df"}, - {file = "pymongo-4.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:286fb275267f0293364ba579f6354452599161f1902ad411061c7f744ab88328"}, - {file = "pymongo-4.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4cddb51cead9700c4dccc916952bc0321b8d766bf782d374bfa0e93ef47c1d20"}, - {file = "pymongo-4.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d79f20f9c7cbc1c708fb80b648b6fbd3220fd3437a9bd6017c1eb592e03b361"}, - {file = "pymongo-4.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dd3352eaf578f8e9bdea7a5692910eedad1e8680f60726fc70e99c8af51a5449"}, - {file = "pymongo-4.9.1-cp311-cp311-win32.whl", hash = "sha256:ea3f0196e7c311b9944a609ac175bd91ab97952164a1246716fdd38d53ca3bcc"}, - {file = "pymongo-4.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:b4c793db8457c856f333f396798470b9bfe405e17c307d581532c74cec70150c"}, - {file = "pymongo-4.9.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:47b4896544095d172c366dd4d4ea1da6b0ab1a77d8416897cc1801e2421b1e67"}, - {file = "pymongo-4.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:fbb1c7dfcf6c44e9e1928290631c7603817991cdf570691c9e15fca594918435"}, - {file = "pymongo-4.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a7689da1d1b444284e4ea9ab2eb64a15307b6b795918c0f3cd7774dd1d8a7556"}, - {file = "pymongo-4.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7f962d74201c772555f7a78792fed820a5ea76db5c7ee6cf43748e411b44e430"}, - {file = "pymongo-4.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08fbab69f3fb6f8088c81f4c4a8abd84a99c132034f5e27e47f894bbcb6bf439"}, - {file = "pymongo-4.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4327c0d9bd616b8289691360f2d4a09a72fe35479795832eae0d4ff78af53923"}, - {file = "pymongo-4.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34e4993ae78be56f9e27a141168a1ab78253576fa3e893fa335a719ce204c3ef"}, - {file = "pymongo-4.9.1-cp312-cp312-win32.whl", hash = "sha256:e1f346811d4a2369f88ab7a6f886fa9c3bbc9ed4e4f4a3becca8717a73d465cb"}, - {file = "pymongo-4.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:a2b12c74cfd90147babb77f9728646bcedfdbd2bd2a5b4130a00e3a0af1a3d34"}, - {file = "pymongo-4.9.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a40ea8bc9cffb61c5c9c426c430d22235e085e610ee81ae075ddf51f12f76236"}, - {file = "pymongo-4.9.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:75d5974f874acdb2f125bdbe785045b23a39ecce1d3143dd5712800c7b6d25eb"}, - {file = "pymongo-4.9.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f23a046531030318622414f21198e232cf93c5640da9a80b45596a059c8cc090"}, - {file = "pymongo-4.9.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91b1a92214c3912af5467f77c2f6435cd76f6de64c70cba7bb4ee43eba7f459e"}, - {file = "pymongo-4.9.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3a846423c4535428f69a90a1451df3718bc59f0c4ab685b9e96d3071951e0be4"}, - {file = "pymongo-4.9.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d476d91a5c9e6c37bc8ec3fb294e1c01d95736ccf01a59bb1540fe2f710f826e"}, - {file = "pymongo-4.9.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:172d8ba0f567e351a18765db23dab7dbcfdffd91a8788d90d46b350f80a40781"}, - {file = "pymongo-4.9.1-cp313-cp313-win32.whl", hash = "sha256:95418e334629440f70fe5ceeefc6cbbd50defb566901c8d68179ffbaec8d5f01"}, - {file = "pymongo-4.9.1-cp313-cp313-win_amd64.whl", hash = "sha256:1dfd2aa30174d36a3ef1dae4ee4c89710c2d65cac52ce6e13f17c710edbd61cf"}, - {file = "pymongo-4.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c4204fad54830a3173a5c939cd052d0561fba03dba7e0ff6852fd631f3314aa4"}, - {file = "pymongo-4.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:375765ec81b1f0a26d08928afea0c3dff897c36080a090be53fc7b70cc51d497"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d1b959a3dda0775d9111622ee47ad47772aed3a9da2e7d5f2f513fa68175dea"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:42c19d2b094cdd0ead7dbb38860bbe8268c140334ce55d8b39204ddb4ebd4904"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1fac1def9e9073f1c80198c99f0ec39c2528236c8912d96d7fd3b0237f4c523a"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b347052d510989d1f52b8553b31297f21cf74bd9f6aed71ee84e563492f4ff17"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1b4b961fce213f2bcdc92268f85111a3668c61b9b4d4e7ece27dce3a137cfcbd"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a0b10cf51ec14a487c94709d294c00e1fb6a0a4c38cdc3acfb2ced5ef60972a0"}, - {file = "pymongo-4.9.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:679b8d55854da7c7fdb82aa5e092ab4de0144daf6758defed8ab00ff9ce05360"}, - {file = "pymongo-4.9.1-cp38-cp38-win32.whl", hash = "sha256:432ad395d2233056b042ccc73234e7136aa65d944d6bd8b5138394bd38aaff79"}, - {file = "pymongo-4.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:9fbe9fad27619ac4cfda5df0ade26a99906da7dfe7b01deddc25997eb1804e4c"}, - {file = "pymongo-4.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:99b611ff75b5d9e17183dcf9584a7b04f9db07e51a162f23ea05e485e0735c0a"}, - {file = "pymongo-4.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8089003a99127f917bdbeec177d41cef019cda8ec70534c1018cb60aacd23c2a"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d78adf25967c06298c7e488f4cfab79a390fc32c2b1d428613976f99031603d"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56877cfcdf7dfc5c6408e4551ec0d6d65ebbca4d744a0bc90400f09ef6bbcc8a"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16d2efe559d0d96bc0b74b3ff76701ad6f6e1a65f6581b573dcacc29158131c8"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f838f613e74b4dad8ace0d90f42346005bece4eda5bf6d389cfadb8322d39316"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db5b299e11284f8d82ce2983d8e19fcc28f98f902a179709ef1982b4cca6f8b8"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b23211c031b45d0f32de83ab7d77f9c26f1025c2d2c91463a5d8594a16103655"}, - {file = "pymongo-4.9.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:687cf70e096381bc65b4273a6a9319617618f7ace65caffc356e1099c4a68511"}, - {file = "pymongo-4.9.1-cp39-cp39-win32.whl", hash = "sha256:e02b03e3815b80a63e773e4c32aed3cf5633d406f376477be74550295c211256"}, - {file = "pymongo-4.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:0492ef43f3342354cf581712e431621c221f60c877ebded84e3f3e53b71bbbe0"}, - {file = "pymongo-4.9.1.tar.gz", hash = "sha256:b7f2d34390acf60e229c30037d1473fcf69f4536cd7f48f6f78c0c931c61c505"}, + {file = "pymongo-4.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e699aa68c4a7dea2ab5a27067f7d3e08555f8d2c0dc6a0c8c60cfd9ff2e6a4b1"}, + {file = "pymongo-4.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:70645abc714f06b4ad6b72d5bf73792eaad14e3a2cfe29c62a9c81ada69d9e4b"}, + {file = "pymongo-4.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae2fd94c9fe048c94838badcc6e992d033cb9473eb31e5710b3707cba5e8aee2"}, + {file = "pymongo-4.10.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ded27a4a5374dae03a92e084a60cdbcecd595306555bda553b833baf3fc4868"}, + {file = "pymongo-4.10.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1ecc2455e3974a6c429687b395a0bc59636f2d6aedf5785098cf4e1f180f1c71"}, + {file = "pymongo-4.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a920fee41f7d0259f5f72c1f1eb331bc26ffbdc952846f9bd8c3b119013bb52c"}, + {file = "pymongo-4.10.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e0a15665b2d6cf364f4cd114d62452ce01d71abfbd9c564ba8c74dcd7bbd6822"}, + {file = "pymongo-4.10.1-cp310-cp310-win32.whl", hash = "sha256:29e1c323c28a4584b7095378ff046815e39ff82cdb8dc4cc6dfe3acf6f9ad1f8"}, + {file = "pymongo-4.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:88dc4aa45f8744ccfb45164aedb9a4179c93567bbd98a33109d7dc400b00eb08"}, + {file = "pymongo-4.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:57ee6becae534e6d47848c97f6a6dff69e3cce7c70648d6049bd586764febe59"}, + {file = "pymongo-4.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6f437a612f4d4f7aca1812311b1e84477145e950fdafe3285b687ab8c52541f3"}, + {file = "pymongo-4.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a970fd3117ab40a4001c3dad333bbf3c43687d90f35287a6237149b5ccae61d"}, + {file = "pymongo-4.10.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7c4d0e7cd08ef9f8fbf2d15ba281ed55604368a32752e476250724c3ce36c72e"}, + {file = "pymongo-4.10.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca6f700cff6833de4872a4e738f43123db34400173558b558ae079b5535857a4"}, + {file = "pymongo-4.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cec237c305fcbeef75c0bcbe9d223d1e22a6e3ba1b53b2f0b79d3d29c742b45b"}, + {file = "pymongo-4.10.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b3337804ea0394a06e916add4e5fac1c89902f1b6f33936074a12505cab4ff05"}, + {file = "pymongo-4.10.1-cp311-cp311-win32.whl", hash = "sha256:778ac646ce6ac1e469664062dfe9ae1f5c9961f7790682809f5ec3b8fda29d65"}, + {file = "pymongo-4.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:9df4ab5594fdd208dcba81be815fa8a8a5d8dedaf3b346cbf8b61c7296246a7a"}, + {file = "pymongo-4.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fbedc4617faa0edf423621bb0b3b8707836687161210d470e69a4184be9ca011"}, + {file = "pymongo-4.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7bd26b2aec8ceeb95a5d948d5cc0f62b0eb6d66f3f4230705c1e3d3d2c04ec76"}, + {file = "pymongo-4.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb104c3c2a78d9d85571c8ac90ec4f95bca9b297c6eee5ada71fabf1129e1674"}, + {file = "pymongo-4.10.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4924355245a9c79f77b5cda2db36e0f75ece5faf9f84d16014c0a297f6d66786"}, + {file = "pymongo-4.10.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:11280809e5dacaef4971113f0b4ff4696ee94cfdb720019ff4fa4f9635138252"}, + {file = "pymongo-4.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5d55f2a82e5eb23795f724991cac2bffbb1c0f219c0ba3bf73a835f97f1bb2e"}, + {file = "pymongo-4.10.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e974ab16a60be71a8dfad4e5afccf8dd05d41c758060f5d5bda9a758605d9a5d"}, + {file = "pymongo-4.10.1-cp312-cp312-win32.whl", hash = "sha256:544890085d9641f271d4f7a47684450ed4a7344d6b72d5968bfae32203b1bb7c"}, + {file = "pymongo-4.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:dcc07b1277e8b4bf4d7382ca133850e323b7ab048b8353af496d050671c7ac52"}, + {file = "pymongo-4.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:90bc6912948dfc8c363f4ead54d54a02a15a7fee6cfafb36dc450fc8962d2cb7"}, + {file = "pymongo-4.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:594dd721b81f301f33e843453638e02d92f63c198358e5a0fa8b8d0b1218dabc"}, + {file = "pymongo-4.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0783e0c8e95397c84e9cf8ab092ab1e5dd7c769aec0ef3a5838ae7173b98dea0"}, + {file = "pymongo-4.10.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6fb6a72e88df46d1c1040fd32cd2d2c5e58722e5d3e31060a0393f04ad3283de"}, + {file = "pymongo-4.10.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e3a593333e20c87415420a4fb76c00b7aae49b6361d2e2205b6fece0563bf40"}, + {file = "pymongo-4.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:72e2ace7456167c71cfeca7dcb47bd5dceda7db2231265b80fc625c5e8073186"}, + {file = "pymongo-4.10.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8ad05eb9c97e4f589ed9e74a00fcaac0d443ccd14f38d1258eb4c39a35dd722b"}, + {file = "pymongo-4.10.1-cp313-cp313-win32.whl", hash = "sha256:ee4c86d8e6872a61f7888fc96577b0ea165eb3bdb0d841962b444fa36001e2bb"}, + {file = "pymongo-4.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708"}, + {file = "pymongo-4.10.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:442ca247f53ad24870a01e80a71cd81b3f2318655fd9d66748ee2bd1b1569d9e"}, + {file = "pymongo-4.10.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:23e1d62df5592518204943b507be7b457fb8a4ad95a349440406fd42db5d0923"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6131bc6568b26e7495a9f3ef2b1700566b76bbecd919f4472bfe90038a61f425"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fdeba88c540c9ed0338c0b2062d9f81af42b18d6646b3e6dda05cf6edd46ada9"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15a624d752dd3c89d10deb0ef6431559b6d074703cab90a70bb849ece02adc6b"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba164e73fdade9b4614a2497321c5b7512ddf749ed508950bdecc28d8d76a2d9"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9235fa319993405ae5505bf1333366388add2e06848db7b3deee8f990b69808e"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e4a65567bd17d19f03157c7ec992c6530eafd8191a4e5ede25566792c4fe3fa2"}, + {file = "pymongo-4.10.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:f1945d48fb9b8a87d515da07f37e5b2c35b364a435f534c122e92747881f4a7c"}, + {file = "pymongo-4.10.1-cp38-cp38-win32.whl", hash = "sha256:345f8d340802ebce509f49d5833cc913da40c82f2e0daf9f60149cacc9ca680f"}, + {file = "pymongo-4.10.1-cp38-cp38-win_amd64.whl", hash = "sha256:3a70d5efdc0387ac8cd50f9a5f379648ecfc322d14ec9e1ba8ec957e5d08c372"}, + {file = "pymongo-4.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:15b1492cc5c7cd260229590be7218261e81684b8da6d6de2660cf743445500ce"}, + {file = "pymongo-4.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:95207503c41b97e7ecc7e596d84a61f441b4935f11aa8332828a754e7ada8c82"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb99f003c720c6d83be02c8f1a7787c22384a8ca9a4181e406174db47a048619"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f2bc1ee4b1ca2c4e7e6b7a5e892126335ec8d9215bcd3ac2fe075870fefc3358"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:93a0833c10a967effcd823b4e7445ec491f0bf6da5de0ca33629c0528f42b748"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f56707497323150bd2ed5d63067f4ffce940d0549d4ea2dfae180deec7f9363"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:409ab7d6c4223e5c85881697f365239dd3ed1b58f28e4124b846d9d488c86880"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:dac78a650dc0637d610905fd06b5fa6419ae9028cf4d04d6a2657bc18a66bbce"}, + {file = "pymongo-4.10.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1ec3fa88b541e0481aff3c35194c9fac96e4d57ec5d1c122376000eb28c01431"}, + {file = "pymongo-4.10.1-cp39-cp39-win32.whl", hash = "sha256:e0e961923a7b8a1c801c43552dcb8153e45afa41749d9efbd3a6d33f45489f7a"}, + {file = "pymongo-4.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:dabe8bf1ad644e6b93f3acf90ff18536d94538ca4d27e583c6db49889e98e48f"}, + {file = "pymongo-4.10.1.tar.gz", hash = "sha256:a9de02be53b6bb98efe0b9eda84ffa1ec027fcb23a2de62c4f941d9a2f2f3330"}, ] [package.dependencies] @@ -5677,13 +5688,13 @@ testing = ["covdefaults (>=2.3)", "pytest (>=8.3.3)", "pytest-cov (>=5)", "pytes [[package]] name = "pyproject-hooks" -version = "1.1.0" +version = "1.2.0" description = "Wrappers to call pyproject.toml-based build backend hooks." optional = false python-versions = ">=3.7" files = [ - {file = "pyproject_hooks-1.1.0-py3-none-any.whl", hash = "sha256:7ceeefe9aec63a1064c18d939bdc3adf2d8aa1988a510afec15151578b232aa2"}, - {file = "pyproject_hooks-1.1.0.tar.gz", hash = "sha256:4b37730834edbd6bd37f26ece6b44802fb1c1ee2ece0e54ddff8bfc06db86965"}, + {file = "pyproject_hooks-1.2.0-py3-none-any.whl", hash = "sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913"}, + {file = "pyproject_hooks-1.2.0.tar.gz", hash = "sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8"}, ] [[package]] @@ -6469,18 +6480,19 @@ files = [ [[package]] name = "rich" -version = "13.8.1" +version = "13.9.1" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = false -python-versions = ">=3.7.0" +python-versions = ">=3.8.0" files = [ - {file = "rich-13.8.1-py3-none-any.whl", hash = "sha256:1760a3c0848469b97b558fc61c85233e3dafb69c7a071b4d60c38099d3cd4c06"}, - {file = "rich-13.8.1.tar.gz", hash = "sha256:8260cda28e3db6bf04d2d1ef4dbc03ba80a824c88b0e7668a0f23126a424844a"}, + {file = "rich-13.9.1-py3-none-any.whl", hash = "sha256:b340e739f30aa58921dc477b8adaa9ecdb7cecc217be01d93730ee1bc8aa83be"}, + {file = "rich-13.9.1.tar.gz", hash = "sha256:097cffdf85db1babe30cc7deba5ab3a29e1b9885047dab24c57e9a7f8a9c1466"}, ] [package.dependencies] markdown-it-py = ">=2.2.0" pygments = ">=2.13.0,<3.0.0" +typing-extensions = {version = ">=4.0.0,<5.0", markers = "python_version < \"3.11\""} [package.extras] jupyter = ["ipywidgets (>=7.5.1,<9)"] @@ -7706,13 +7718,13 @@ full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart (>=0.0.7 [[package]] name = "streamlit" -version = "1.35.0" +version = "1.39.0" description = "A faster way to build and share data apps" optional = false python-versions = "!=3.9.7,>=3.8" files = [ - {file = "streamlit-1.35.0-py2.py3-none-any.whl", hash = "sha256:e17d1d86830a0d7687c37faf2fe47bffa752d0c95a306e96d7749bd3faa72a5b"}, - {file = "streamlit-1.35.0.tar.gz", hash = "sha256:679d55bb6189743f606abf0696623df0bfd223a6d0c8d96b8d60678d4891d2d6"}, + {file = "streamlit-1.39.0-py2.py3-none-any.whl", hash = "sha256:a359fc54ed568b35b055ff1d453c320735539ad12e264365a36458aef55a5fba"}, + {file = "streamlit-1.39.0.tar.gz", hash = "sha256:fef9de7983c4ee65c08e85607d7ffccb56b00482b1041fa62f90e4815d39df3a"}, ] [package.dependencies] @@ -7721,23 +7733,23 @@ blinker = ">=1.0.0,<2" cachetools = ">=4.0,<6" click = ">=7.0,<9" gitpython = ">=3.0.7,<3.1.19 || >3.1.19,<4" -numpy = ">=1.19.3,<2" -packaging = ">=16.8,<25" -pandas = ">=1.3.0,<3" +numpy = ">=1.20,<3" +packaging = ">=20,<25" +pandas = ">=1.4.0,<3" pillow = ">=7.1.0,<11" -protobuf = ">=3.20,<5" +protobuf = ">=3.20,<6" pyarrow = ">=7.0" pydeck = ">=0.8.0b4,<1" requests = ">=2.27,<3" rich = ">=10.14.0,<14" -tenacity = ">=8.1.0,<9" +tenacity = ">=8.1.0,<10" toml = ">=0.10.1,<2" tornado = ">=6.0.3,<7" typing-extensions = ">=4.3.0,<5" -watchdog = {version = ">=2.1.5", markers = "platform_system != \"Darwin\""} +watchdog = {version = ">=2.1.5,<6", markers = "platform_system != \"Darwin\""} [package.extras] -snowflake = ["snowflake-connector-python (>=2.8.0)", "snowflake-snowpark-python (>=0.9.0)"] +snowflake = ["snowflake-connector-python (>=2.8.0)", "snowflake-snowpark-python[modin] (>=1.17.0)"] [[package]] name = "sympy" @@ -7772,13 +7784,13 @@ widechars = ["wcwidth"] [[package]] name = "tenacity" -version = "8.5.0" +version = "9.0.0" description = "Retry code until it succeeds" optional = false python-versions = ">=3.8" files = [ - {file = "tenacity-8.5.0-py3-none-any.whl", hash = "sha256:b594c2a5945830c267ce6b79a166228323ed52718f30302c1359836112346687"}, - {file = "tenacity-8.5.0.tar.gz", hash = "sha256:8bc6c0c8a09b31e6cad13c47afbed1a567518250a9a171418582ed8d9c20ca78"}, + {file = "tenacity-9.0.0-py3-none-any.whl", hash = "sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539"}, + {file = "tenacity-9.0.0.tar.gz", hash = "sha256:807f37ca97d62aa361264d497b0e31e92b8027044942bfa756160d908320d73b"}, ] [package.extras] @@ -8038,13 +8050,13 @@ files = [ [[package]] name = "tomli" -version = "2.0.1" +version = "2.0.2" description = "A lil' TOML parser" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, + {file = "tomli-2.0.2-py3-none-any.whl", hash = "sha256:2ebe24485c53d303f690b0ec092806a085f07af5a5aa1464f3931eec36caaa38"}, + {file = "tomli-2.0.2.tar.gz", hash = "sha256:d46d457a85337051c36524bc5349dd91b1877838e2979ac5ced3e710ed8a60ed"}, ] [[package]] @@ -8123,30 +8135,31 @@ files = [ [[package]] name = "tox" -version = "4.20.0" +version = "4.21.1" description = "tox is a generic virtualenv management and test command line tool" optional = false python-versions = ">=3.8" files = [ - {file = "tox-4.20.0-py3-none-any.whl", hash = "sha256:21a8005e3d3fe5658a8e36b8ca3ed13a4230429063c5cc2a2fdac6ee5aa0de34"}, - {file = "tox-4.20.0.tar.gz", hash = "sha256:5b78a49b6eaaeab3ae4186415e7c97d524f762ae967c63562687c3e5f0ec23d5"}, + {file = "tox-4.21.1-py3-none-any.whl", hash = "sha256:092bbdcfeabc824db621dab5be9f0866a34a0a4fc874e9746bf04c0d5462d78b"}, + {file = "tox-4.21.1.tar.gz", hash = "sha256:b2ce4222772693b302d75e2e4f7727d67bb60925d740479bb09845098562589f"}, ] [package.dependencies] cachetools = ">=5.5" chardet = ">=5.2" colorama = ">=0.4.6" -filelock = ">=3.15.4" +filelock = ">=3.16.1" packaging = ">=24.1" -platformdirs = ">=4.2.2" +platformdirs = ">=4.3.6" pluggy = ">=1.5" -pyproject-api = ">=1.7.1" +pyproject-api = ">=1.8" tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} -virtualenv = ">=20.26.3" +typing-extensions = {version = ">=4.12.2", markers = "python_version < \"3.11\""} +virtualenv = ">=20.26.6" [package.extras] -docs = ["furo (>=2024.8.6)", "sphinx (>=8.0.2)", "sphinx-argparse-cli (>=1.17)", "sphinx-autodoc-typehints (>=2.4)", "sphinx-copybutton (>=0.5.2)", "sphinx-inline-tabs (>=2023.4.21)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=24.8)"] -testing = ["build[virtualenv] (>=1.2.2)", "covdefaults (>=2.3)", "detect-test-pollution (>=1.2)", "devpi-process (>=1)", "diff-cover (>=9.1.1)", "distlib (>=0.3.8)", "flaky (>=3.8.1)", "hatch-vcs (>=0.4)", "hatchling (>=1.25)", "psutil (>=6)", "pytest (>=8.3.2)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "pytest-xdist (>=3.6.1)", "re-assert (>=1.1)", "setuptools (>=74.1.2)", "time-machine (>=2.15)", "wheel (>=0.44)"] +docs = ["furo (>=2024.8.6)", "sphinx (>=8.0.2)", "sphinx-argparse-cli (>=1.18.2)", "sphinx-autodoc-typehints (>=2.4.4)", "sphinx-copybutton (>=0.5.2)", "sphinx-inline-tabs (>=2023.4.21)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=24.8)"] +testing = ["build[virtualenv] (>=1.2.2)", "covdefaults (>=2.3)", "detect-test-pollution (>=1.2)", "devpi-process (>=1.0.2)", "diff-cover (>=9.2)", "distlib (>=0.3.8)", "flaky (>=3.8.1)", "hatch-vcs (>=0.4)", "hatchling (>=1.25)", "psutil (>=6)", "pytest (>=8.3.3)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "pytest-xdist (>=3.6.1)", "re-assert (>=1.1)", "setuptools (>=75.1)", "time-machine (>=2.15)", "wheel (>=0.44)"] [[package]] name = "tqdm" diff --git a/pyproject.toml b/pyproject.toml index b62ce8c..a6b97d1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "curategpt" -version = "0.2.0" +version = "0.2.1" description = "CurateGPT" authors = ["Author 1 "] license = "BSD-3" diff --git a/src/curate_gpt/wrappers/__init__.py b/src/curate_gpt/wrappers/__init__.py deleted file mode 100644 index 172fc7f..0000000 --- a/src/curate_gpt/wrappers/__init__.py +++ /dev/null @@ -1,88 +0,0 @@ -""" -Wrappers on top of external data sources. - -Wrappers allow for dynamic or static loading of an external data source -into a store. -""" - -from curate_gpt.wrappers.base_wrapper import BaseWrapper - -__all__ = [ - "BaseWrapper", - "PubmedWrapper", - "WikipediaWrapper", - "BiocWrapper", - "OntologyWrapper", - "BioportalWrapper", - "NMDCWrapper", - "GOCAMWrapper", - "JGIWrapper", - "AllianceGeneWrapper", - "NCBIBiosampleWrapper", - "NCBIBioprojectWrapper", - "OmicsDIWrapper", - "UniprotWrapper", - "OBOFormatWrapper", - "ClinVarWrapper", - "PMCWrapper", - "HPOAWrapper", - "HPOAByPubWrapper", - "MAXOAWrapper", - "GoogleDriveWrapper", - "FAIRSharingWrapper", - "FilesystemWrapper", - "get_wrapper", -] - - -def get_all_subclasses(cls): - """Recursively get all subclasses of a given class.""" - direct_subclasses = cls.__subclasses__() - return direct_subclasses + [ - s for subclass in direct_subclasses for s in get_all_subclasses(subclass) - ] - - -def get_wrapper(name: str, **kwargs) -> BaseWrapper: - # NOTE: ORDER DEPENDENT. TODO: fix this - from curate_gpt.wrappers.bio.alliance_gene_wrapper import AllianceGeneWrapper # noqa - from curate_gpt.wrappers.bio.bacdive_wrapper import BacDiveWrapper # noqa - from curate_gpt.wrappers.bio.gocam_wrapper import GOCAMWrapper # noqa - from curate_gpt.wrappers.bio.mediadive_wrapper import MediaDiveWrapper # noqa - from curate_gpt.wrappers.bio.omicsdi_wrapper import OmicsDIWrapper # noqa - from curate_gpt.wrappers.bio.reactome_wrapper import ReactomeWrapper # noqa - from curate_gpt.wrappers.bio.uniprot_wrapper import UniprotWrapper # noqa - from curate_gpt.wrappers.clinical.ctgov_wrapper import ClinicalTrialsWrapper # noqa - from curate_gpt.wrappers.clinical.clinvar_wrapper import ClinVarWrapper # noqa - from curate_gpt.wrappers.clinical.hpoa_by_pub_wrapper import HPOAByPubWrapper # noqa - from curate_gpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper # noqa - from curate_gpt.wrappers.clinical.maxoa_wrapper import MAXOAWrapper # noqa - from curate_gpt.wrappers.general.filesystem_wrapper import FilesystemWrapper # noqa - from curate_gpt.wrappers.general.github_wrapper import GitHubWrapper # noqa - from curate_gpt.wrappers.general.google_drive_wrapper import GoogleDriveWrapper # noqa - from curate_gpt.wrappers.general.gspread_wrapper import GSpreadWrapper # noqa - from curate_gpt.wrappers.general.json_wrapper import JSONWrapper # noqa - from curate_gpt.wrappers.general.linkml_schema_wrapper import LinkMLSchemarapper # noqa - from curate_gpt.wrappers.investigation.ess_deepdive_wrapper import ESSDeepDiveWrapper # noqa - from curate_gpt.wrappers.investigation.fairsharing_wrapper import FAIRSharingWrapper # noqa - from curate_gpt.wrappers.investigation.jgi_wrapper import JGIWrapper # noqa - from curate_gpt.wrappers.investigation.ncbi_bioproject_wrapper import ( # noqa - NCBIBioprojectWrapper, - ) - from curate_gpt.wrappers.investigation.ncbi_biosample_wrapper import ( # noqa - NCBIBiosampleWrapper, - ) - from curate_gpt.wrappers.investigation.nmdc_wrapper import NMDCWrapper # noqa - from curate_gpt.wrappers.legal.reusabledata_wrapper import ReusableDataWrapper # noqa - from curate_gpt.wrappers.literature.bioc_wrapper import BiocWrapper # noqa - from curate_gpt.wrappers.literature.pmc_wrapper import PMCWrapper # noqa - from curate_gpt.wrappers.literature.pubmed_wrapper import PubmedWrapper # noqa - from curate_gpt.wrappers.literature.wikipedia_wrapper import WikipediaWrapper # noqa - from curate_gpt.wrappers.ontology.bioportal_wrapper import BioportalWrapper # noqa - from curate_gpt.wrappers.ontology.oboformat_wrapper import OBOFormatWrapper # noqa - from curate_gpt.wrappers.ontology.ontology_wrapper import OntologyWrapper # noqa - - for c in get_all_subclasses(BaseWrapper): - if c.name == name: - return c(**kwargs) - raise ValueError(f"Unknown view {name}, not found in {get_all_subclasses(BaseWrapper)}") diff --git a/src/curate_gpt/__init__.py b/src/curategpt/__init__.py similarity index 87% rename from src/curate_gpt/__init__.py rename to src/curategpt/__init__.py index 01d8321..28e546f 100644 --- a/src/curate_gpt/__init__.py +++ b/src/curategpt/__init__.py @@ -22,7 +22,7 @@ # package is not installed __version__ = "0.0.0" # pragma: no cover -from curate_gpt.extract import BasicExtractor, Extractor -from curate_gpt.store import ChromaDBAdapter, DBAdapter +from curategpt.extract import BasicExtractor, Extractor +from curategpt.store import ChromaDBAdapter, DBAdapter __all__ = ["DBAdapter", "ChromaDBAdapter", "Extractor", "BasicExtractor"] diff --git a/src/curate_gpt/adhoc/__init__.py b/src/curategpt/adhoc/__init__.py similarity index 100% rename from src/curate_gpt/adhoc/__init__.py rename to src/curategpt/adhoc/__init__.py diff --git a/src/curate_gpt/adhoc/gocam_predictor.py b/src/curategpt/adhoc/gocam_predictor.py similarity index 98% rename from src/curate_gpt/adhoc/gocam_predictor.py rename to src/curategpt/adhoc/gocam_predictor.py index fbf88b1..5028574 100644 --- a/src/curate_gpt/adhoc/gocam_predictor.py +++ b/src/curategpt/adhoc/gocam_predictor.py @@ -10,11 +10,11 @@ import click import yaml -from curate_gpt import BasicExtractor, DBAdapter -from curate_gpt.store import get_store -from curate_gpt.utils.eval_utils import Outcome, score_prediction -from curate_gpt.utils.llm_utils import query_model -from curate_gpt.wrappers.bio.gocam_wrapper import GOCAMWrapper +from curategpt import BasicExtractor, DBAdapter +from curategpt.store import get_store +from curategpt.utils.eval_utils import Outcome, score_prediction +from curategpt.utils.llm_utils import query_model +from curategpt.wrappers.bio.gocam_wrapper import GOCAMWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/__init__.py b/src/curategpt/agents/__init__.py similarity index 100% rename from src/curate_gpt/agents/__init__.py rename to src/curategpt/agents/__init__.py diff --git a/src/curate_gpt/agents/agent_utils.py b/src/curategpt/agents/agent_utils.py similarity index 95% rename from src/curate_gpt/agents/agent_utils.py rename to src/curategpt/agents/agent_utils.py index 4200a1a..cdcb5e7 100644 --- a/src/curate_gpt/agents/agent_utils.py +++ b/src/curategpt/agents/agent_utils.py @@ -6,8 +6,8 @@ import yaml from llm import Model -from curate_gpt.store.db_adapter import SEARCH_RESULT -from curate_gpt.utils.tokens import estimate_num_tokens, max_tokens_by_model +from curategpt.store.db_adapter import SEARCH_RESULT +from curategpt.utils.tokens import estimate_num_tokens, max_tokens_by_model logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/base_agent.py b/src/curategpt/agents/base_agent.py similarity index 90% rename from src/curate_gpt/agents/base_agent.py rename to src/curategpt/agents/base_agent.py index c52536a..7183537 100644 --- a/src/curate_gpt/agents/base_agent.py +++ b/src/curategpt/agents/base_agent.py @@ -4,8 +4,8 @@ from dataclasses import dataclass from typing import Union -from curate_gpt import DBAdapter, Extractor -from curate_gpt.wrappers import BaseWrapper +from curategpt import DBAdapter, Extractor +from curategpt.wrappers import BaseWrapper @dataclass diff --git a/src/curate_gpt/agents/bootstrap_agent.py b/src/curategpt/agents/bootstrap_agent.py similarity index 94% rename from src/curate_gpt/agents/bootstrap_agent.py rename to src/curategpt/agents/bootstrap_agent.py index 40c5189..b3cf1cd 100644 --- a/src/curate_gpt/agents/bootstrap_agent.py +++ b/src/curategpt/agents/bootstrap_agent.py @@ -5,9 +5,9 @@ from jinja2 import Template from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.conf.prompts import PROMPTS_DIR -from curate_gpt.extract import AnnotatedObject +from curategpt.agents.base_agent import BaseAgent +from curategpt.conf.prompts import PROMPTS_DIR +from curategpt.extract import AnnotatedObject class KnowledgeBaseSpecification(BaseModel): diff --git a/src/curate_gpt/agents/chat_agent.py b/src/curategpt/agents/chat_agent.py similarity index 97% rename from src/curate_gpt/agents/chat_agent.py rename to src/curategpt/agents/chat_agent.py index e0e6bd1..42e2bf1 100644 --- a/src/curate_gpt/agents/chat_agent.py +++ b/src/curategpt/agents/chat_agent.py @@ -9,9 +9,9 @@ from llm import Conversation from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.utils.tokens import estimate_num_tokens, max_tokens_by_model -from curate_gpt.wrappers import BaseWrapper +from curategpt.agents.base_agent import BaseAgent +from curategpt.utils.tokens import estimate_num_tokens, max_tokens_by_model +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/concept_recognition_agent.py b/src/curategpt/agents/concept_recognition_agent.py similarity index 99% rename from src/curate_gpt/agents/concept_recognition_agent.py rename to src/curategpt/agents/concept_recognition_agent.py index f54eb83..90add5e 100644 --- a/src/curate_gpt/agents/concept_recognition_agent.py +++ b/src/curategpt/agents/concept_recognition_agent.py @@ -7,7 +7,7 @@ from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent +from curategpt.agents.base_agent import BaseAgent logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/dase_agent.py b/src/curategpt/agents/dase_agent.py similarity index 96% rename from src/curate_gpt/agents/dase_agent.py rename to src/curategpt/agents/dase_agent.py index b4bf1f2..bf5575c 100644 --- a/src/curate_gpt/agents/dase_agent.py +++ b/src/curategpt/agents/dase_agent.py @@ -6,10 +6,10 @@ from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.agents.chat_agent import ChatResponse -from curate_gpt.extract import AnnotatedObject -from curate_gpt.store import DBAdapter +from curategpt.agents.base_agent import BaseAgent +from curategpt.agents.chat_agent import ChatResponse +from curategpt.extract import AnnotatedObject +from curategpt.store import DBAdapter logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/dragon_agent.py b/src/curategpt/agents/dragon_agent.py similarity index 99% rename from src/curate_gpt/agents/dragon_agent.py rename to src/curategpt/agents/dragon_agent.py index afb28a6..c237ef4 100644 --- a/src/curate_gpt/agents/dragon_agent.py +++ b/src/curategpt/agents/dragon_agent.py @@ -7,9 +7,9 @@ import yaml from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.extract import AnnotatedObject -from curate_gpt.store import DBAdapter +from curategpt.agents.base_agent import BaseAgent +from curategpt.extract import AnnotatedObject +from curategpt.store import DBAdapter logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/evidence_agent.py b/src/curategpt/agents/evidence_agent.py similarity index 95% rename from src/curate_gpt/agents/evidence_agent.py rename to src/curategpt/agents/evidence_agent.py index 2e5ba0d..30a5470 100644 --- a/src/curate_gpt/agents/evidence_agent.py +++ b/src/curategpt/agents/evidence_agent.py @@ -5,12 +5,12 @@ import yaml -from curate_gpt import BasicExtractor -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.agents.chat_agent import ChatAgent, ChatResponse -from curate_gpt.formatters.format_utils import object_as_yaml -from curate_gpt.utils.tokens import estimate_num_tokens, max_tokens_by_model -from curate_gpt.wrappers import BaseWrapper +from curategpt import BasicExtractor +from curategpt.agents.base_agent import BaseAgent +from curategpt.agents.chat_agent import ChatAgent, ChatResponse +from curategpt.formatters.format_utils import object_as_yaml +from curategpt.utils.tokens import estimate_num_tokens, max_tokens_by_model +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/huggingface_agent.py b/src/curategpt/agents/huggingface_agent.py similarity index 100% rename from src/curate_gpt/agents/huggingface_agent.py rename to src/curategpt/agents/huggingface_agent.py diff --git a/src/curate_gpt/agents/mapping_agent.py b/src/curategpt/agents/mapping_agent.py similarity index 96% rename from src/curate_gpt/agents/mapping_agent.py rename to src/curategpt/agents/mapping_agent.py index a25cfc9..1b6fd88 100644 --- a/src/curate_gpt/agents/mapping_agent.py +++ b/src/curategpt/agents/mapping_agent.py @@ -12,10 +12,10 @@ import yaml from pydantic import BaseModel, ConfigDict -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.formatters.format_utils import remove_formatting -from curate_gpt.store.db_adapter import SEARCH_RESULT -from curate_gpt.utils.tokens import estimate_num_tokens, max_tokens_by_model +from curategpt.agents.base_agent import BaseAgent +from curategpt.formatters.format_utils import remove_formatting +from curategpt.store.db_adapter import SEARCH_RESULT +from curategpt.utils.tokens import estimate_num_tokens, max_tokens_by_model logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/agents/summarization_agent.py b/src/curategpt/agents/summarization_agent.py similarity index 96% rename from src/curate_gpt/agents/summarization_agent.py rename to src/curategpt/agents/summarization_agent.py index f85d39d..f1fe5d7 100644 --- a/src/curate_gpt/agents/summarization_agent.py +++ b/src/curategpt/agents/summarization_agent.py @@ -2,8 +2,8 @@ from dataclasses import dataclass from typing import List -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.wrappers import BaseWrapper +from curategpt.agents.base_agent import BaseAgent +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/app/__init__.py b/src/curategpt/app/__init__.py similarity index 100% rename from src/curate_gpt/app/__init__.py rename to src/curategpt/app/__init__.py diff --git a/src/curate_gpt/app/app.py b/src/curategpt/app/app.py similarity index 97% rename from src/curate_gpt/app/app.py rename to src/curategpt/app/app.py index a609e4f..925b72a 100644 --- a/src/curate_gpt/app/app.py +++ b/src/curategpt/app/app.py @@ -9,24 +9,24 @@ import yaml from scipy.spatial import distance_matrix -from curate_gpt import BasicExtractor -from curate_gpt.agents import MappingAgent -from curate_gpt.agents.chat_agent import ChatAgent, ChatResponse -from curate_gpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.agents.evidence_agent import EvidenceAgent -from curate_gpt.app.components import ( +from curategpt import BasicExtractor +from curategpt.agents import MappingAgent +from curategpt.agents.chat_agent import ChatAgent, ChatResponse +from curategpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.agents.evidence_agent import EvidenceAgent +from curategpt.app.components import ( DimensionalityReductionOptions, limit_slider_component, vectors_to_fig, ) -from curate_gpt.app.helper import get_applicable_examples, get_case_collection -from curate_gpt.app.state import get_state -from curate_gpt.extract import OpenAIExtractor, RecursiveExtractor -from curate_gpt.wrappers import BaseWrapper -from curate_gpt.wrappers.investigation.jgi_wrapper import JGIWrapper -from curate_gpt.wrappers.literature import WikipediaWrapper -from curate_gpt.wrappers.literature.pubmed_wrapper import PubmedWrapper +from curategpt.app.helper import get_applicable_examples, get_case_collection +from curategpt.app.state import get_state +from curategpt.extract import OpenAIExtractor, RecursiveExtractor +from curategpt.wrappers import BaseWrapper +from curategpt.wrappers.investigation.jgi_wrapper import JGIWrapper +from curategpt.wrappers.literature import WikipediaWrapper +from curategpt.wrappers.literature.pubmed_wrapper import PubmedWrapper PUBMED = "PubMed (via API)" WIKIPEDIA = "Wikipedia (via API)" diff --git a/src/curate_gpt/app/cart.py b/src/curategpt/app/cart.py similarity index 100% rename from src/curate_gpt/app/cart.py rename to src/curategpt/app/cart.py diff --git a/src/curate_gpt/app/components.py b/src/curategpt/app/components.py similarity index 100% rename from src/curate_gpt/app/components.py rename to src/curategpt/app/components.py diff --git a/src/curate_gpt/app/helper.py b/src/curategpt/app/helper.py similarity index 96% rename from src/curate_gpt/app/helper.py rename to src/curategpt/app/helper.py index 293f9f9..149773e 100644 --- a/src/curate_gpt/app/helper.py +++ b/src/curategpt/app/helper.py @@ -4,7 +4,7 @@ import yaml -from curate_gpt.conf import EXAMPLES_DIR +from curategpt.conf import EXAMPLES_DIR HELP_CASES = EXAMPLES_DIR / "bio.yaml" diff --git a/src/curate_gpt/app/state.py b/src/curategpt/app/state.py similarity index 83% rename from src/curate_gpt/app/state.py rename to src/curategpt/app/state.py index 5470dd5..76326a3 100644 --- a/src/curate_gpt/app/state.py +++ b/src/curategpt/app/state.py @@ -1,10 +1,10 @@ from dataclasses import dataclass, field from typing import Any, Dict, List, Optional -from curate_gpt import BasicExtractor, ChromaDBAdapter, DBAdapter, Extractor -from curate_gpt.agents.chat_agent import ChatResponse -from curate_gpt.app.cart import Cart -from curate_gpt.extract import AnnotatedObject +from curategpt import BasicExtractor, ChromaDBAdapter, DBAdapter, Extractor +from curategpt.agents.chat_agent import ChatResponse +from curategpt.app.cart import Cart +from curategpt.extract import AnnotatedObject @dataclass diff --git a/src/curate_gpt/cli.py b/src/curategpt/cli.py similarity index 98% rename from src/curate_gpt/cli.py rename to src/curategpt/cli.py index 1b5af8e..6233e03 100644 --- a/src/curate_gpt/cli.py +++ b/src/curategpt/cli.py @@ -23,27 +23,27 @@ from oaklib import get_adapter from pydantic import BaseModel -from curate_gpt import ChromaDBAdapter, __version__ -from curate_gpt.agents.bootstrap_agent import BootstrapAgent, KnowledgeBaseSpecification -from curate_gpt.agents.chat_agent import ChatAgent, ChatResponse -from curate_gpt.agents.concept_recognition_agent import AnnotationMethod, ConceptRecognitionAgent -from curate_gpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.agents.evidence_agent import EvidenceAgent -from curate_gpt.agents.huggingface_agent import HuggingFaceAgent -from curate_gpt.agents.summarization_agent import SummarizationAgent -from curate_gpt.evaluation.dae_evaluator import DatabaseAugmentedCompletionEvaluator -from curate_gpt.evaluation.evaluation_datamodel import StratifiedCollection, Task -from curate_gpt.evaluation.runner import run_task -from curate_gpt.evaluation.splitter import stratify_collection -from curate_gpt.extract import AnnotatedObject -from curate_gpt.extract.basic_extractor import BasicExtractor -from curate_gpt.store import get_store -from curate_gpt.store.schema_proxy import SchemaProxy -from curate_gpt.utils.vectordb_operations import match_collections -from curate_gpt.wrappers import BaseWrapper, get_wrapper -from curate_gpt.wrappers.literature.pubmed_wrapper import PubmedWrapper -from curate_gpt.wrappers.ontology import OntologyWrapper +from curategpt import ChromaDBAdapter, __version__ +from curategpt.agents.bootstrap_agent import BootstrapAgent, KnowledgeBaseSpecification +from curategpt.agents.chat_agent import ChatAgent, ChatResponse +from curategpt.agents.concept_recognition_agent import AnnotationMethod, ConceptRecognitionAgent +from curategpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.agents.evidence_agent import EvidenceAgent +from curategpt.agents.huggingface_agent import HuggingFaceAgent +from curategpt.agents.summarization_agent import SummarizationAgent +from curategpt.evaluation.dae_evaluator import DatabaseAugmentedCompletionEvaluator +from curategpt.evaluation.evaluation_datamodel import StratifiedCollection, Task +from curategpt.evaluation.runner import run_task +from curategpt.evaluation.splitter import stratify_collection +from curategpt.extract import AnnotatedObject +from curategpt.extract.basic_extractor import BasicExtractor +from curategpt.store import get_store +from curategpt.store.schema_proxy import SchemaProxy +from curategpt.utils.vectordb_operations import match_collections +from curategpt.wrappers import BaseWrapper, get_wrapper +from curategpt.wrappers.literature.pubmed_wrapper import PubmedWrapper +from curategpt.wrappers.ontology import OntologyWrapper __all__ = [ "main", @@ -1636,7 +1636,7 @@ def evaluate( Example: ------- - curategpt evaluate src/curate_gpt/conf/tasks/bio-ont.tasks.yaml + curategpt evaluate src/curategpt/conf/tasks/bio-ont.tasks.yaml """ normalized_tasks = [] for task in tasks: diff --git a/src/curate_gpt/conf/__init__.py b/src/curategpt/conf/__init__.py similarity index 100% rename from src/curate_gpt/conf/__init__.py rename to src/curategpt/conf/__init__.py diff --git a/src/curate_gpt/conf/examples/bio.yaml b/src/curategpt/conf/examples/bio.yaml similarity index 100% rename from src/curate_gpt/conf/examples/bio.yaml rename to src/curategpt/conf/examples/bio.yaml diff --git a/src/curate_gpt/conf/examples/rdp.yaml b/src/curategpt/conf/examples/rdp.yaml similarity index 100% rename from src/curate_gpt/conf/examples/rdp.yaml rename to src/curategpt/conf/examples/rdp.yaml diff --git a/src/curate_gpt/conf/prompts/__init__.py b/src/curategpt/conf/prompts/__init__.py similarity index 100% rename from src/curate_gpt/conf/prompts/__init__.py rename to src/curategpt/conf/prompts/__init__.py diff --git a/src/curate_gpt/conf/prompts/bootstrap-schema.j2 b/src/curategpt/conf/prompts/bootstrap-schema.j2 similarity index 100% rename from src/curate_gpt/conf/prompts/bootstrap-schema.j2 rename to src/curategpt/conf/prompts/bootstrap-schema.j2 diff --git a/src/curate_gpt/evaluation/__init__.py b/src/curategpt/evaluation/__init__.py similarity index 100% rename from src/curate_gpt/evaluation/__init__.py rename to src/curategpt/evaluation/__init__.py diff --git a/src/curate_gpt/evaluation/base_evaluator.py b/src/curategpt/evaluation/base_evaluator.py similarity index 86% rename from src/curate_gpt/evaluation/base_evaluator.py rename to src/curategpt/evaluation/base_evaluator.py index 5d2fd23..d611cb6 100644 --- a/src/curate_gpt/evaluation/base_evaluator.py +++ b/src/curategpt/evaluation/base_evaluator.py @@ -2,8 +2,8 @@ from dataclasses import dataclass from typing import TextIO -from curate_gpt.agents.base_agent import BaseAgent -from curate_gpt.evaluation.evaluation_datamodel import ClassificationMetrics +from curategpt.agents.base_agent import BaseAgent +from curategpt.evaluation.evaluation_datamodel import ClassificationMetrics @dataclass diff --git a/src/curate_gpt/evaluation/calc_statistics.py b/src/curategpt/evaluation/calc_statistics.py similarity index 99% rename from src/curate_gpt/evaluation/calc_statistics.py rename to src/curategpt/evaluation/calc_statistics.py index 8d558f3..5ce3653 100644 --- a/src/curate_gpt/evaluation/calc_statistics.py +++ b/src/curategpt/evaluation/calc_statistics.py @@ -2,7 +2,7 @@ import yaml -from curate_gpt.evaluation.evaluation_datamodel import ( +from curategpt.evaluation.evaluation_datamodel import ( AggregationMethod, ClassificationMetrics, ClassificationOutcome, diff --git a/src/curate_gpt/evaluation/dae_evaluator.py b/src/curategpt/evaluation/dae_evaluator.py similarity index 95% rename from src/curate_gpt/evaluation/dae_evaluator.py rename to src/curategpt/evaluation/dae_evaluator.py index 8e9b9c4..75bc92d 100644 --- a/src/curate_gpt/evaluation/dae_evaluator.py +++ b/src/curategpt/evaluation/dae_evaluator.py @@ -5,14 +5,14 @@ import yaml -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.evaluation.base_evaluator import BaseEvaluator -from curate_gpt.evaluation.calc_statistics import ( +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.evaluation.base_evaluator import BaseEvaluator +from curategpt.evaluation.calc_statistics import ( aggregate_metrics, calculate_metrics, evaluate_predictions, ) -from curate_gpt.evaluation.evaluation_datamodel import ClassificationMetrics, ClassificationOutcome +from curategpt.evaluation.evaluation_datamodel import ClassificationMetrics, ClassificationOutcome logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/evaluation/evaluation_datamodel.py b/src/curategpt/evaluation/evaluation_datamodel.py similarity index 100% rename from src/curate_gpt/evaluation/evaluation_datamodel.py rename to src/curategpt/evaluation/evaluation_datamodel.py diff --git a/src/curate_gpt/evaluation/runner.py b/src/curategpt/evaluation/runner.py similarity index 93% rename from src/curate_gpt/evaluation/runner.py rename to src/curategpt/evaluation/runner.py index cb408af..21c2cc8 100644 --- a/src/curate_gpt/evaluation/runner.py +++ b/src/curategpt/evaluation/runner.py @@ -7,11 +7,11 @@ import yaml -from curate_gpt import BasicExtractor, ChromaDBAdapter -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.evaluation.dae_evaluator import DatabaseAugmentedCompletionEvaluator -from curate_gpt.evaluation.evaluation_datamodel import Task -from curate_gpt.evaluation.splitter import stratify_collection_to_store +from curategpt import BasicExtractor, ChromaDBAdapter +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.evaluation.dae_evaluator import DatabaseAugmentedCompletionEvaluator +from curategpt.evaluation.evaluation_datamodel import Task +from curategpt.evaluation.splitter import stratify_collection_to_store logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/evaluation/splitter.py b/src/curategpt/evaluation/splitter.py similarity index 97% rename from src/curate_gpt/evaluation/splitter.py rename to src/curategpt/evaluation/splitter.py index acf9392..72b8990 100644 --- a/src/curate_gpt/evaluation/splitter.py +++ b/src/curategpt/evaluation/splitter.py @@ -2,8 +2,8 @@ import random from typing import Any, Dict, List, Optional, Union -from curate_gpt import ChromaDBAdapter, DBAdapter -from curate_gpt.evaluation.evaluation_datamodel import StratifiedCollection +from curategpt import ChromaDBAdapter, DBAdapter +from curategpt.evaluation.evaluation_datamodel import StratifiedCollection logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/extract/__init__.py b/src/curategpt/extract/__init__.py similarity index 100% rename from src/curate_gpt/extract/__init__.py rename to src/curategpt/extract/__init__.py diff --git a/src/curate_gpt/extract/basic_extractor.py b/src/curategpt/extract/basic_extractor.py similarity index 98% rename from src/curate_gpt/extract/basic_extractor.py rename to src/curategpt/extract/basic_extractor.py index e786a27..95c1ff8 100644 --- a/src/curate_gpt/extract/basic_extractor.py +++ b/src/curategpt/extract/basic_extractor.py @@ -10,7 +10,7 @@ import yaml from pydantic import ConfigDict -from curate_gpt.formatters.format_utils import remove_formatting +from curategpt.formatters.format_utils import remove_formatting from ..utils.tokens import estimate_num_tokens, max_tokens_by_model from .extractor import AnnotatedObject, Extractor diff --git a/src/curate_gpt/extract/extractor.py b/src/curategpt/extract/extractor.py similarity index 98% rename from src/curate_gpt/extract/extractor.py rename to src/curategpt/extract/extractor.py index 7e5dc65..13a857d 100644 --- a/src/curate_gpt/extract/extractor.py +++ b/src/curategpt/extract/extractor.py @@ -11,7 +11,7 @@ from pydantic import BaseModel as BaseModel from pydantic import ConfigDict -from curate_gpt.store.schema_proxy import SchemaProxy +from curategpt.store.schema_proxy import SchemaProxy logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/extract/openai_extractor.py b/src/curategpt/extract/openai_extractor.py similarity index 98% rename from src/curate_gpt/extract/openai_extractor.py rename to src/curategpt/extract/openai_extractor.py index 8d7a162..4211931 100644 --- a/src/curate_gpt/extract/openai_extractor.py +++ b/src/curategpt/extract/openai_extractor.py @@ -8,7 +8,7 @@ from openai import OpenAI, OpenAIError -from curate_gpt.extract.extractor import AnnotatedObject, Extractor +from curategpt.extract.extractor import AnnotatedObject, Extractor FUNC_NAME = "extract_data" diff --git a/src/curate_gpt/extract/recursive_extractor.py b/src/curategpt/extract/recursive_extractor.py similarity index 98% rename from src/curate_gpt/extract/recursive_extractor.py rename to src/curategpt/extract/recursive_extractor.py index 82e3cae..cfa5084 100644 --- a/src/curate_gpt/extract/recursive_extractor.py +++ b/src/curategpt/extract/recursive_extractor.py @@ -6,7 +6,7 @@ from dataclasses import dataclass from typing import Any, Dict, List -from curate_gpt.extract.extractor import AnnotatedObject, Extractor +from curategpt.extract.extractor import AnnotatedObject, Extractor logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/formatters/__init__.py b/src/curategpt/formatters/__init__.py similarity index 100% rename from src/curate_gpt/formatters/__init__.py rename to src/curategpt/formatters/__init__.py diff --git a/src/curate_gpt/formatters/format_utils.py b/src/curategpt/formatters/format_utils.py similarity index 100% rename from src/curate_gpt/formatters/format_utils.py rename to src/curategpt/formatters/format_utils.py diff --git a/src/curate_gpt/store/__init__.py b/src/curategpt/store/__init__.py similarity index 100% rename from src/curate_gpt/store/__init__.py rename to src/curategpt/store/__init__.py diff --git a/src/curate_gpt/store/chromadb_adapter.py b/src/curategpt/store/chromadb_adapter.py similarity index 98% rename from src/curate_gpt/store/chromadb_adapter.py rename to src/curategpt/store/chromadb_adapter.py index c1a6608..1b6c983 100644 --- a/src/curate_gpt/store/chromadb_adapter.py +++ b/src/curategpt/store/chromadb_adapter.py @@ -19,10 +19,10 @@ from oaklib.utilities.iterator_utils import chunk from pydantic import BaseModel -from curate_gpt.store.db_adapter import DBAdapter -from curate_gpt.store.metadata import CollectionMetadata -from curate_gpt.store.vocab import OBJECT, PROJECTION, QUERY, SEARCH_RESULT -from curate_gpt.utils.vector_algorithms import mmr_diversified_search +from curategpt.store.db_adapter import DBAdapter +from curategpt.store.metadata import CollectionMetadata +from curategpt.store.vocab import OBJECT, PROJECTION, QUERY, SEARCH_RESULT +from curategpt.utils.vector_algorithms import mmr_diversified_search logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/store/db_adapter.py b/src/curategpt/store/db_adapter.py similarity index 96% rename from src/curate_gpt/store/db_adapter.py rename to src/curategpt/store/db_adapter.py index 6a01a40..7d08665 100644 --- a/src/curate_gpt/store/db_adapter.py +++ b/src/curategpt/store/db_adapter.py @@ -12,9 +12,9 @@ from click.utils import LazyFile from jsonlines import jsonlines -from curate_gpt.store.metadata import CollectionMetadata -from curate_gpt.store.schema_proxy import SchemaProxy -from curate_gpt.store.vocab import ( +from curategpt.store.metadata import CollectionMetadata +from curategpt.store.schema_proxy import SchemaProxy +from curategpt.store.vocab import ( DEFAULT_COLLECTION, DOCUMENTS, EMBEDDINGS, @@ -60,7 +60,7 @@ class DBAdapter(ABC): Objects are partitioned into *collections*, which maps to the equivalent concept in MongoDB and ChromaDB. - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("in_memory") >>> store.insert({"name": "John", "age": 42}, collection="people") @@ -69,7 +69,7 @@ class DBAdapter(ABC): store object. You can optionally bind a store object to a collection, which effectively gives you a collection object: - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("in_memory") >>> store.set_collection("people") >>> store.insert({"name": "John", "age": 42}) @@ -98,7 +98,7 @@ def insert(self, objs: Union[OBJECT, Iterable[OBJECT]], collection: str = None, """ Insert an object or list of objects into the store. - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("in_memory") >>> store.insert([{"name": "John", "age": 42}], collection="people") @@ -161,14 +161,14 @@ def set_collection(self, collection: str): This allows the following - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("in_memory") >>> store.set_collection("people") >>> store.insert([{"name": "John", "age": 42}]) to be written in place of - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("in_memory") >>> store.insert([{"name": "John", "age": 42}], collection="people") @@ -220,8 +220,8 @@ def set_collection_metadata( """ Set the metadata for a collection. - >>> from curate_gpt.store import get_store - >>> from curate_gpt.store import CollectionMetadata + >>> from curategpt.store import get_store + >>> from curategpt.store import CollectionMetadata >>> store = get_store("in_memory") >>> cm = CollectionMetadata(name="People", description="People in the database") >>> store.set_collection_metadata("people", cm) @@ -248,7 +248,7 @@ def search( """ Query the database for a text string. - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("chromadb", "db") >>> for obj, distance, info in store.search("forebrain neurons", collection="ont_cl"): ... obj_id = obj["id"] @@ -276,7 +276,7 @@ def find( """ Query the database. - >>> from curate_gpt.store import get_store + >>> from curategpt.store import get_store >>> store = get_store("chromadb", "db") >>> objs = list(store.find({"name": "NeuronOfTheForebrain"}, collection="ont_cl")) diff --git a/src/curate_gpt/store/db_metadata.py b/src/curategpt/store/db_metadata.py similarity index 100% rename from src/curate_gpt/store/db_metadata.py rename to src/curategpt/store/db_metadata.py diff --git a/src/curate_gpt/store/duckdb_adapter.py b/src/curategpt/store/duckdb_adapter.py similarity index 99% rename from src/curate_gpt/store/duckdb_adapter.py rename to src/curategpt/store/duckdb_adapter.py index 4733a05..0a771c6 100644 --- a/src/curate_gpt/store/duckdb_adapter.py +++ b/src/curategpt/store/duckdb_adapter.py @@ -23,10 +23,10 @@ from pydantic import BaseModel from sentence_transformers import SentenceTransformer -from curate_gpt.store.db_adapter import DBAdapter -from curate_gpt.store.duckdb_result import DuckDBSearchResult -from curate_gpt.store.metadata import CollectionMetadata -from curate_gpt.store.vocab import ( +from curategpt.store.db_adapter import DBAdapter +from curategpt.store.duckdb_result import DuckDBSearchResult +from curategpt.store.metadata import CollectionMetadata +from curategpt.store.vocab import ( DEFAULT_MODEL, DEFAULT_OPENAI_MODEL, DISTANCES, @@ -40,7 +40,7 @@ QUERY, SEARCH_RESULT, ) -from curate_gpt.utils.vector_algorithms import mmr_diversified_search +from curategpt.utils.vector_algorithms import mmr_diversified_search logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/store/duckdb_result.py b/src/curategpt/store/duckdb_result.py similarity index 100% rename from src/curate_gpt/store/duckdb_result.py rename to src/curategpt/store/duckdb_result.py diff --git a/src/curate_gpt/store/in_memory_adapter.py b/src/curategpt/store/in_memory_adapter.py similarity index 97% rename from src/curate_gpt/store/in_memory_adapter.py rename to src/curategpt/store/in_memory_adapter.py index 1dfc6b2..e92bee3 100644 --- a/src/curate_gpt/store/in_memory_adapter.py +++ b/src/curategpt/store/in_memory_adapter.py @@ -6,9 +6,9 @@ from pydantic import BaseModel, ConfigDict -from curate_gpt import DBAdapter -from curate_gpt.store.db_adapter import OBJECT, PROJECTION, QUERY, SEARCH_RESULT -from curate_gpt.store.metadata import CollectionMetadata +from curategpt import DBAdapter +from curategpt.store.db_adapter import OBJECT, PROJECTION, QUERY, SEARCH_RESULT +from curategpt.store.metadata import CollectionMetadata logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/store/metadata.py b/src/curategpt/store/metadata.py similarity index 100% rename from src/curate_gpt/store/metadata.py rename to src/curategpt/store/metadata.py diff --git a/src/curate_gpt/store/schema_proxy.py b/src/curategpt/store/schema_proxy.py similarity index 100% rename from src/curate_gpt/store/schema_proxy.py rename to src/curategpt/store/schema_proxy.py diff --git a/src/curate_gpt/store/vocab.py b/src/curategpt/store/vocab.py similarity index 94% rename from src/curate_gpt/store/vocab.py rename to src/curategpt/store/vocab.py index c34de32..e2508b1 100644 --- a/src/curate_gpt/store/vocab.py +++ b/src/curategpt/store/vocab.py @@ -4,7 +4,7 @@ from linkml_runtime.utils.yamlutils import YAMLRoot from pydantic import BaseModel -from curate_gpt.store.duckdb_result import DuckDBSearchResult +from curategpt.store.duckdb_result import DuckDBSearchResult OBJECT = Union[YAMLRoot, BaseModel, Dict, DuckDBSearchResult] QUERY = Union[str, YAMLRoot, BaseModel, Dict, DuckDBSearchResult] diff --git a/src/curate_gpt/utils/__init__.py b/src/curategpt/utils/__init__.py similarity index 100% rename from src/curate_gpt/utils/__init__.py rename to src/curategpt/utils/__init__.py diff --git a/src/curate_gpt/utils/eval_utils.py b/src/curategpt/utils/eval_utils.py similarity index 100% rename from src/curate_gpt/utils/eval_utils.py rename to src/curategpt/utils/eval_utils.py diff --git a/src/curate_gpt/utils/llm_utils.py b/src/curategpt/utils/llm_utils.py similarity index 100% rename from src/curate_gpt/utils/llm_utils.py rename to src/curategpt/utils/llm_utils.py diff --git a/src/curate_gpt/utils/patch_utils.py b/src/curategpt/utils/patch_utils.py similarity index 100% rename from src/curate_gpt/utils/patch_utils.py rename to src/curategpt/utils/patch_utils.py diff --git a/src/curate_gpt/utils/search.py b/src/curategpt/utils/search.py similarity index 100% rename from src/curate_gpt/utils/search.py rename to src/curategpt/utils/search.py diff --git a/src/curate_gpt/utils/tokens.py b/src/curategpt/utils/tokens.py similarity index 100% rename from src/curate_gpt/utils/tokens.py rename to src/curategpt/utils/tokens.py diff --git a/src/curate_gpt/utils/vector_algorithms.py b/src/curategpt/utils/vector_algorithms.py similarity index 99% rename from src/curate_gpt/utils/vector_algorithms.py rename to src/curategpt/utils/vector_algorithms.py index 807ad77..e4408ca 100644 --- a/src/curate_gpt/utils/vector_algorithms.py +++ b/src/curategpt/utils/vector_algorithms.py @@ -2,7 +2,7 @@ import numpy as np -from curate_gpt.utils.search import logger +from curategpt.utils.search import logger LOL = List[List[float]] diff --git a/src/curate_gpt/utils/vectordb_operations.py b/src/curategpt/utils/vectordb_operations.py similarity index 92% rename from src/curate_gpt/utils/vectordb_operations.py rename to src/curategpt/utils/vectordb_operations.py index 86d322d..4946f85 100644 --- a/src/curate_gpt/utils/vectordb_operations.py +++ b/src/curategpt/utils/vectordb_operations.py @@ -1,8 +1,8 @@ import logging from typing import Iterator, Tuple -from curate_gpt import DBAdapter -from curate_gpt.utils.vector_algorithms import compute_cosine_similarity, top_matches +from curategpt import DBAdapter +from curategpt.utils.vector_algorithms import compute_cosine_similarity, top_matches logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/views/__init__.py b/src/curategpt/views/__init__.py similarity index 100% rename from src/curate_gpt/views/__init__.py rename to src/curategpt/views/__init__.py diff --git a/src/curate_gpt/views/namer.py b/src/curategpt/views/namer.py similarity index 98% rename from src/curate_gpt/views/namer.py rename to src/curategpt/views/namer.py index ebe4cc0..e0b1c77 100644 --- a/src/curate_gpt/views/namer.py +++ b/src/curategpt/views/namer.py @@ -1,7 +1,7 @@ from dataclasses import dataclass from typing import Any, Iterable, Iterator, List, Tuple -from curate_gpt import DBAdapter +from curategpt import DBAdapter @dataclass diff --git a/src/curategpt/wrappers/__init__.py b/src/curategpt/wrappers/__init__.py new file mode 100644 index 0000000..449f608 --- /dev/null +++ b/src/curategpt/wrappers/__init__.py @@ -0,0 +1,107 @@ +""" +Wrappers on top of external data sources. + +Wrappers allow for dynamic or static loading of an external data source +into a store. +""" + +from curategpt.wrappers.base_wrapper import BaseWrapper + +__all__ = [ + "BaseWrapper", + "PubmedWrapper", + "WikipediaWrapper", + "BiocWrapper", + "OntologyWrapper", + "BioportalWrapper", + "NMDCWrapper", + "GOCAMWrapper", + "JGIWrapper", + "AllianceGeneWrapper", + "NCBIBiosampleWrapper", + "NCBIBioprojectWrapper", + "OmicsDIWrapper", + "UniprotWrapper", + "OBOFormatWrapper", + "ClinVarWrapper", + "PMCWrapper", + "HPOAWrapper", + "HPOAByPubWrapper", + "MAXOAWrapper", + "GoogleDriveWrapper", + "FAIRSharingWrapper", + "FilesystemWrapper", + "get_wrapper", +] + + +def get_all_subclasses(cls): + """Recursively get all subclasses of a given class.""" + direct_subclasses = cls.__subclasses__() + return direct_subclasses + [ + s for subclass in direct_subclasses for s in get_all_subclasses(subclass) + ] + + +def get_wrapper(name: str, **kwargs) -> BaseWrapper: + # NOTE: ORDER DEPENDENT. TODO: fix this + from curategpt.wrappers.bio.alliance_gene_wrapper import \ + AllianceGeneWrapper # noqa + from curategpt.wrappers.bio.bacdive_wrapper import BacDiveWrapper # noqa + from curategpt.wrappers.bio.gocam_wrapper import GOCAMWrapper # noqa + from curategpt.wrappers.bio.mediadive_wrapper import \ + MediaDiveWrapper # noqa + from curategpt.wrappers.bio.omicsdi_wrapper import OmicsDIWrapper # noqa + from curategpt.wrappers.bio.reactome_wrapper import \ + ReactomeWrapper # noqa + from curategpt.wrappers.bio.uniprot_wrapper import UniprotWrapper # noqa + from curategpt.wrappers.clinical.clinvar_wrapper import \ + ClinVarWrapper # noqa + from curategpt.wrappers.clinical.ctgov_wrapper import \ + ClinicalTrialsWrapper # noqa + from curategpt.wrappers.clinical.hpoa_by_pub_wrapper import \ + HPOAByPubWrapper # noqa + from curategpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper # noqa + from curategpt.wrappers.clinical.maxoa_wrapper import MAXOAWrapper # noqa + from curategpt.wrappers.general.filesystem_wrapper import \ + FilesystemWrapper # noqa + from curategpt.wrappers.general.github_wrapper import \ + GitHubWrapper # noqa + from curategpt.wrappers.general.google_drive_wrapper import \ + GoogleDriveWrapper # noqa + from curategpt.wrappers.general.gspread_wrapper import \ + GSpreadWrapper # noqa + from curategpt.wrappers.general.json_wrapper import JSONWrapper # noqa + from curategpt.wrappers.general.linkml_schema_wrapper import \ + LinkMLSchemarapper # noqa + from curategpt.wrappers.investigation.ess_deepdive_wrapper import \ + ESSDeepDiveWrapper # noqa + from curategpt.wrappers.investigation.fairsharing_wrapper import \ + FAIRSharingWrapper # noqa + from curategpt.wrappers.investigation.jgi_wrapper import \ + JGIWrapper # noqa + from curategpt.wrappers.investigation.ncbi_bioproject_wrapper import \ + NCBIBioprojectWrapper # noqa + from curategpt.wrappers.investigation.ncbi_biosample_wrapper import \ + NCBIBiosampleWrapper # noqa + from curategpt.wrappers.investigation.nmdc_wrapper import \ + NMDCWrapper # noqa + from curategpt.wrappers.legal.reusabledata_wrapper import \ + ReusableDataWrapper # noqa + from curategpt.wrappers.literature.bioc_wrapper import BiocWrapper # noqa + from curategpt.wrappers.literature.pmc_wrapper import PMCWrapper # noqa + from curategpt.wrappers.literature.pubmed_wrapper import \ + PubmedWrapper # noqa + from curategpt.wrappers.literature.wikipedia_wrapper import \ + WikipediaWrapper # noqa + from curategpt.wrappers.ontology.bioportal_wrapper import \ + BioportalWrapper # noqa + from curategpt.wrappers.ontology.oboformat_wrapper import \ + OBOFormatWrapper # noqa + from curategpt.wrappers.ontology.ontology_wrapper import \ + OntologyWrapper # noqa + + for c in get_all_subclasses(BaseWrapper): + if c.name == name: + return c(**kwargs) + raise ValueError(f"Unknown view {name}, not found in {get_all_subclasses(BaseWrapper)}") diff --git a/src/curate_gpt/wrappers/base_wrapper.py b/src/curategpt/wrappers/base_wrapper.py similarity index 96% rename from src/curate_gpt/wrappers/base_wrapper.py rename to src/curategpt/wrappers/base_wrapper.py index 793d74e..5e0050f 100644 --- a/src/curate_gpt/wrappers/base_wrapper.py +++ b/src/curategpt/wrappers/base_wrapper.py @@ -8,10 +8,10 @@ from deprecation import deprecated -from curate_gpt import ChromaDBAdapter -from curate_gpt.extract import Extractor -from curate_gpt.store import DBAdapter -from curate_gpt.store.db_adapter import SEARCH_RESULT +from curategpt import ChromaDBAdapter +from curategpt.extract import Extractor +from curategpt.store import DBAdapter +from curategpt.store.db_adapter import SEARCH_RESULT logger = logging.getLogger(__name__) @@ -141,7 +141,7 @@ def chat( :param kwargs: :return: """ - from curate_gpt.agents.chat_agent import ChatAgent + from curategpt.agents.chat_agent import ChatAgent # prime the pubmed cache if collection is None: diff --git a/src/curate_gpt/wrappers/bio/__init__.py b/src/curategpt/wrappers/bio/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/bio/__init__.py rename to src/curategpt/wrappers/bio/__init__.py diff --git a/src/curate_gpt/wrappers/bio/alliance_gene_wrapper.py b/src/curategpt/wrappers/bio/alliance_gene_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/bio/alliance_gene_wrapper.py rename to src/curategpt/wrappers/bio/alliance_gene_wrapper.py index 3bc1c6d..595439c 100644 --- a/src/curate_gpt/wrappers/bio/alliance_gene_wrapper.py +++ b/src/curategpt/wrappers/bio/alliance_gene_wrapper.py @@ -7,7 +7,7 @@ import requests_cache from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/bio/bacdive_wrapper.py b/src/curategpt/wrappers/bio/bacdive_wrapper.py similarity index 96% rename from src/curate_gpt/wrappers/bio/bacdive_wrapper.py rename to src/curategpt/wrappers/bio/bacdive_wrapper.py index b3498e1..ad5d3cd 100644 --- a/src/curate_gpt/wrappers/bio/bacdive_wrapper.py +++ b/src/curategpt/wrappers/bio/bacdive_wrapper.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from typing import ClassVar, Dict, Iterable, Iterator, Optional -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/bio/gocam_wrapper.py b/src/curategpt/wrappers/bio/gocam_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/bio/gocam_wrapper.py rename to src/curategpt/wrappers/bio/gocam_wrapper.py index cecde98..91f185e 100644 --- a/src/curate_gpt/wrappers/bio/gocam_wrapper.py +++ b/src/curategpt/wrappers/bio/gocam_wrapper.py @@ -10,9 +10,9 @@ from oaklib import BasicOntologyInterface, get_adapter from oaklib.interfaces.association_provider_interface import AssociationProviderInterface -from curate_gpt.formatters.format_utils import camelify -from curate_gpt.wrappers import BaseWrapper -from curate_gpt.wrappers.literature import PubmedWrapper +from curategpt.formatters.format_utils import camelify +from curategpt.wrappers import BaseWrapper +from curategpt.wrappers.literature import PubmedWrapper BASE_URL = "https://go-public.s3.amazonaws.com/files/" INDEX_URL = "https://go-public.s3.amazonaws.com/files/gocam-models.json" diff --git a/src/curate_gpt/wrappers/bio/mediadive_wrapper.py b/src/curategpt/wrappers/bio/mediadive_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/bio/mediadive_wrapper.py rename to src/curategpt/wrappers/bio/mediadive_wrapper.py index a30b593..d723b15 100644 --- a/src/curate_gpt/wrappers/bio/mediadive_wrapper.py +++ b/src/curategpt/wrappers/bio/mediadive_wrapper.py @@ -5,7 +5,7 @@ import requests_cache from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/bio/omicsdi_wrapper.py b/src/curategpt/wrappers/bio/omicsdi_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/bio/omicsdi_wrapper.py rename to src/curategpt/wrappers/bio/omicsdi_wrapper.py index 2187339..dc37e9a 100644 --- a/src/curate_gpt/wrappers/bio/omicsdi_wrapper.py +++ b/src/curategpt/wrappers/bio/omicsdi_wrapper.py @@ -7,7 +7,7 @@ import requests -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/bio/reactome_wrapper.py b/src/curategpt/wrappers/bio/reactome_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/bio/reactome_wrapper.py rename to src/curategpt/wrappers/bio/reactome_wrapper.py index 49ba848..208a5c4 100644 --- a/src/curate_gpt/wrappers/bio/reactome_wrapper.py +++ b/src/curategpt/wrappers/bio/reactome_wrapper.py @@ -7,7 +7,7 @@ import requests_cache from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/bio/uniprot_wrapper.py b/src/curategpt/wrappers/bio/uniprot_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/bio/uniprot_wrapper.py rename to src/curategpt/wrappers/bio/uniprot_wrapper.py index 1fb92d1..6372757 100644 --- a/src/curate_gpt/wrappers/bio/uniprot_wrapper.py +++ b/src/curategpt/wrappers/bio/uniprot_wrapper.py @@ -7,7 +7,7 @@ import requests_cache from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/clinical/__init__.py b/src/curategpt/wrappers/clinical/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/clinical/__init__.py rename to src/curategpt/wrappers/clinical/__init__.py diff --git a/src/curate_gpt/wrappers/clinical/clinvar_wrapper.py b/src/curategpt/wrappers/clinical/clinvar_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/clinical/clinvar_wrapper.py rename to src/curategpt/wrappers/clinical/clinvar_wrapper.py index c0a780e..fb8fbe1 100644 --- a/src/curate_gpt/wrappers/clinical/clinvar_wrapper.py +++ b/src/curategpt/wrappers/clinical/clinvar_wrapper.py @@ -4,7 +4,7 @@ from dataclasses import dataclass from typing import ClassVar, Dict, List -from curate_gpt.wrappers.literature.eutils_wrapper import EUtilsWrapper +from curategpt.wrappers.literature.eutils_wrapper import EUtilsWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/clinical/ctgov_wrapper.py b/src/curategpt/wrappers/clinical/ctgov_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/clinical/ctgov_wrapper.py rename to src/curategpt/wrappers/clinical/ctgov_wrapper.py index 16e3a33..5c21400 100644 --- a/src/curate_gpt/wrappers/clinical/ctgov_wrapper.py +++ b/src/curategpt/wrappers/clinical/ctgov_wrapper.py @@ -9,7 +9,7 @@ import requests_cache from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/clinical/hpoa_by_pub_wrapper.py b/src/curategpt/wrappers/clinical/hpoa_by_pub_wrapper.py similarity index 81% rename from src/curate_gpt/wrappers/clinical/hpoa_by_pub_wrapper.py rename to src/curategpt/wrappers/clinical/hpoa_by_pub_wrapper.py index 79df83a..0b3535a 100644 --- a/src/curate_gpt/wrappers/clinical/hpoa_by_pub_wrapper.py +++ b/src/curategpt/wrappers/clinical/hpoa_by_pub_wrapper.py @@ -1,7 +1,7 @@ from dataclasses import dataclass from typing import ClassVar -from curate_gpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper +from curategpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper @dataclass diff --git a/src/curate_gpt/wrappers/clinical/hpoa_wrapper.py b/src/curategpt/wrappers/clinical/hpoa_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/clinical/hpoa_wrapper.py rename to src/curategpt/wrappers/clinical/hpoa_wrapper.py index 6cbead5..9da3aa5 100644 --- a/src/curate_gpt/wrappers/clinical/hpoa_wrapper.py +++ b/src/curategpt/wrappers/clinical/hpoa_wrapper.py @@ -10,8 +10,8 @@ import requests from oaklib import BasicOntologyInterface, get_adapter -from curate_gpt.wrappers import BaseWrapper -from curate_gpt.wrappers.literature import PubmedWrapper +from curategpt.wrappers import BaseWrapper +from curategpt.wrappers.literature import PubmedWrapper logger = logging.getLogger(__name__) @@ -70,7 +70,7 @@ class HPOAWrapper(BaseWrapper): group_by_publication: bool = False def __post_init__(self): - from curate_gpt.wrappers.literature import PubmedWrapper + from curategpt.wrappers.literature import PubmedWrapper self.pubmed_wrapper = PubmedWrapper() self.pubmed_wrapper.set_cache("hpoa_pubmed_cache") diff --git a/src/curate_gpt/wrappers/clinical/maxoa_wrapper.py b/src/curategpt/wrappers/clinical/maxoa_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/clinical/maxoa_wrapper.py rename to src/curategpt/wrappers/clinical/maxoa_wrapper.py index 0821da3..72524a7 100644 --- a/src/curate_gpt/wrappers/clinical/maxoa_wrapper.py +++ b/src/curategpt/wrappers/clinical/maxoa_wrapper.py @@ -10,8 +10,8 @@ import requests from oaklib import BasicOntologyInterface, get_adapter -from curate_gpt.wrappers import BaseWrapper -from curate_gpt.wrappers.literature.pubmed_wrapper import PubmedWrapper +from curategpt.wrappers import BaseWrapper +from curategpt.wrappers.literature.pubmed_wrapper import PubmedWrapper logger = logging.getLogger(__name__) @@ -80,7 +80,7 @@ class MAXOAWrapper(BaseWrapper): group_by_publication: bool = True def __post_init__(self): - from curate_gpt.wrappers.literature.pubmed_wrapper import PubmedWrapper + from curategpt.wrappers.literature.pubmed_wrapper import PubmedWrapper self.pubmed_wrapper = PubmedWrapper() # reuse hpoa cache diff --git a/src/curate_gpt/wrappers/general/__init__.py b/src/curategpt/wrappers/general/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/general/__init__.py rename to src/curategpt/wrappers/general/__init__.py diff --git a/src/curate_gpt/wrappers/general/filesystem_wrapper.py b/src/curategpt/wrappers/general/filesystem_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/general/filesystem_wrapper.py rename to src/curategpt/wrappers/general/filesystem_wrapper.py index acbbc34..e450881 100644 --- a/src/curate_gpt/wrappers/general/filesystem_wrapper.py +++ b/src/curategpt/wrappers/general/filesystem_wrapper.py @@ -7,7 +7,7 @@ from pathlib import Path from typing import ClassVar, Dict, Iterable, Iterator, Optional -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/general/github_wrapper.py b/src/curategpt/wrappers/general/github_wrapper.py similarity index 99% rename from src/curate_gpt/wrappers/general/github_wrapper.py rename to src/curategpt/wrappers/general/github_wrapper.py index 25aa0c7..9ee2f48 100644 --- a/src/curate_gpt/wrappers/general/github_wrapper.py +++ b/src/curategpt/wrappers/general/github_wrapper.py @@ -10,7 +10,7 @@ import requests_cache from pydantic import BaseModel, ConfigDict -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/general/google_drive_wrapper.py b/src/curategpt/wrappers/general/google_drive_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/general/google_drive_wrapper.py rename to src/curategpt/wrappers/general/google_drive_wrapper.py index 7285ed9..31fef3d 100644 --- a/src/curate_gpt/wrappers/general/google_drive_wrapper.py +++ b/src/curategpt/wrappers/general/google_drive_wrapper.py @@ -10,7 +10,7 @@ from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/general/gspread_wrapper.py b/src/curategpt/wrappers/general/gspread_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/general/gspread_wrapper.py rename to src/curategpt/wrappers/general/gspread_wrapper.py index 6f10510..d29dabb 100644 --- a/src/curate_gpt/wrappers/general/gspread_wrapper.py +++ b/src/curategpt/wrappers/general/gspread_wrapper.py @@ -6,7 +6,7 @@ import gspread -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/general/json_wrapper.py b/src/curategpt/wrappers/general/json_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/general/json_wrapper.py rename to src/curategpt/wrappers/general/json_wrapper.py index deb93ac..e35bbfd 100644 --- a/src/curate_gpt/wrappers/general/json_wrapper.py +++ b/src/curategpt/wrappers/general/json_wrapper.py @@ -8,7 +8,7 @@ import yaml from jsonpath_ng import parse -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/general/linkml_schema_wrapper.py b/src/curategpt/wrappers/general/linkml_schema_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/general/linkml_schema_wrapper.py rename to src/curategpt/wrappers/general/linkml_schema_wrapper.py index 56b2c40..bc4fec2 100644 --- a/src/curate_gpt/wrappers/general/linkml_schema_wrapper.py +++ b/src/curategpt/wrappers/general/linkml_schema_wrapper.py @@ -7,7 +7,7 @@ from linkml_runtime import SchemaView from linkml_runtime.dumpers import json_dumper -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/investigation/__init__.py b/src/curategpt/wrappers/investigation/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/investigation/__init__.py rename to src/curategpt/wrappers/investigation/__init__.py diff --git a/src/curate_gpt/wrappers/investigation/ess_deepdive_wrapper.py b/src/curategpt/wrappers/investigation/ess_deepdive_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/investigation/ess_deepdive_wrapper.py rename to src/curategpt/wrappers/investigation/ess_deepdive_wrapper.py index 15e09b4..8ddd323 100644 --- a/src/curate_gpt/wrappers/investigation/ess_deepdive_wrapper.py +++ b/src/curategpt/wrappers/investigation/ess_deepdive_wrapper.py @@ -7,7 +7,7 @@ import requests_cache -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper URL = "https://fusion.ess-dive.lbl.gov/deepdive?rowStart={cursor}&pageSize={limit}" diff --git a/src/curate_gpt/wrappers/investigation/fairsharing_wrapper.py b/src/curategpt/wrappers/investigation/fairsharing_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/investigation/fairsharing_wrapper.py rename to src/curategpt/wrappers/investigation/fairsharing_wrapper.py index 9fa9bd2..bf963a1 100644 --- a/src/curate_gpt/wrappers/investigation/fairsharing_wrapper.py +++ b/src/curategpt/wrappers/investigation/fairsharing_wrapper.py @@ -9,7 +9,7 @@ import requests import requests_cache -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper URL = "https://api.fairsharing.org" SIGNIN_URL = f"{URL}/users/sign_in" diff --git a/src/curate_gpt/wrappers/investigation/jgi_wrapper.py b/src/curategpt/wrappers/investigation/jgi_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/investigation/jgi_wrapper.py rename to src/curategpt/wrappers/investigation/jgi_wrapper.py index ee278b3..83da466 100644 --- a/src/curate_gpt/wrappers/investigation/jgi_wrapper.py +++ b/src/curategpt/wrappers/investigation/jgi_wrapper.py @@ -7,7 +7,7 @@ import requests -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/investigation/ncbi_bioproject_wrapper.py b/src/curategpt/wrappers/investigation/ncbi_bioproject_wrapper.py similarity index 96% rename from src/curate_gpt/wrappers/investigation/ncbi_bioproject_wrapper.py rename to src/curategpt/wrappers/investigation/ncbi_bioproject_wrapper.py index aecf266..4bc0abf 100644 --- a/src/curate_gpt/wrappers/investigation/ncbi_bioproject_wrapper.py +++ b/src/curategpt/wrappers/investigation/ncbi_bioproject_wrapper.py @@ -6,7 +6,7 @@ import yaml -from curate_gpt.wrappers.literature.eutils_wrapper import EUtilsWrapper +from curategpt.wrappers.literature.eutils_wrapper import EUtilsWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/investigation/ncbi_biosample_wrapper.py b/src/curategpt/wrappers/investigation/ncbi_biosample_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/investigation/ncbi_biosample_wrapper.py rename to src/curategpt/wrappers/investigation/ncbi_biosample_wrapper.py index e177548..56f7fc4 100644 --- a/src/curate_gpt/wrappers/investigation/ncbi_biosample_wrapper.py +++ b/src/curategpt/wrappers/investigation/ncbi_biosample_wrapper.py @@ -4,7 +4,7 @@ from dataclasses import dataclass from typing import ClassVar, Dict, List -from curate_gpt.wrappers.literature.eutils_wrapper import EUtilsWrapper +from curategpt.wrappers.literature.eutils_wrapper import EUtilsWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/investigation/nmdc_wrapper.py b/src/curategpt/wrappers/investigation/nmdc_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/investigation/nmdc_wrapper.py rename to src/curategpt/wrappers/investigation/nmdc_wrapper.py index 92e94a9..f016260 100644 --- a/src/curate_gpt/wrappers/investigation/nmdc_wrapper.py +++ b/src/curategpt/wrappers/investigation/nmdc_wrapper.py @@ -7,7 +7,7 @@ import requests from oaklib import BasicOntologyInterface, get_adapter -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper URL = "https://api.microbiomedata.org/biosamples?per_page={limit}&page={cursor}" diff --git a/src/curate_gpt/wrappers/legal/__init__.py b/src/curategpt/wrappers/legal/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/legal/__init__.py rename to src/curategpt/wrappers/legal/__init__.py diff --git a/src/curate_gpt/wrappers/legal/reusabledata_wrapper.py b/src/curategpt/wrappers/legal/reusabledata_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/legal/reusabledata_wrapper.py rename to src/curategpt/wrappers/legal/reusabledata_wrapper.py index d525e70..64b5075 100644 --- a/src/curate_gpt/wrappers/legal/reusabledata_wrapper.py +++ b/src/curategpt/wrappers/legal/reusabledata_wrapper.py @@ -9,7 +9,7 @@ from bs4 import BeautifulSoup from oaklib import BasicOntologyInterface -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/literature/__init__.py b/src/curategpt/wrappers/literature/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/literature/__init__.py rename to src/curategpt/wrappers/literature/__init__.py diff --git a/src/curate_gpt/wrappers/literature/bioc_wrapper.py b/src/curategpt/wrappers/literature/bioc_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/literature/bioc_wrapper.py rename to src/curategpt/wrappers/literature/bioc_wrapper.py index aa00d5b..5b39c4b 100644 --- a/src/curate_gpt/wrappers/literature/bioc_wrapper.py +++ b/src/curategpt/wrappers/literature/bioc_wrapper.py @@ -7,8 +7,8 @@ from oaklib import BasicOntologyInterface, get_adapter -from curate_gpt.formatters.format_utils import camelify -from curate_gpt.wrappers import BaseWrapper +from curategpt.formatters.format_utils import camelify +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/literature/eutils_wrapper.py b/src/curategpt/wrappers/literature/eutils_wrapper.py similarity index 98% rename from src/curate_gpt/wrappers/literature/eutils_wrapper.py rename to src/curategpt/wrappers/literature/eutils_wrapper.py index d0dd2f8..d6e2822 100644 --- a/src/curate_gpt/wrappers/literature/eutils_wrapper.py +++ b/src/curategpt/wrappers/literature/eutils_wrapper.py @@ -11,7 +11,7 @@ import xmltodict from eutils import Client -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/literature/pmc_wrapper.py b/src/curategpt/wrappers/literature/pmc_wrapper.py similarity index 92% rename from src/curate_gpt/wrappers/literature/pmc_wrapper.py rename to src/curategpt/wrappers/literature/pmc_wrapper.py index 7e041fc..137d124 100644 --- a/src/curate_gpt/wrappers/literature/pmc_wrapper.py +++ b/src/curategpt/wrappers/literature/pmc_wrapper.py @@ -6,7 +6,7 @@ import yaml -from curate_gpt.wrappers.literature.eutils_wrapper import EUtilsWrapper +from curategpt.wrappers.literature.eutils_wrapper import EUtilsWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/literature/pubmed_wrapper.py b/src/curategpt/wrappers/literature/pubmed_wrapper.py similarity index 99% rename from src/curate_gpt/wrappers/literature/pubmed_wrapper.py rename to src/curategpt/wrappers/literature/pubmed_wrapper.py index 2730ab5..8740a66 100644 --- a/src/curate_gpt/wrappers/literature/pubmed_wrapper.py +++ b/src/curategpt/wrappers/literature/pubmed_wrapper.py @@ -15,7 +15,7 @@ from defusedxml.ElementTree import fromstring from eutils import Client -from curate_gpt.wrappers import BaseWrapper +from curategpt.wrappers import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/literature/wikipedia_wrapper.py b/src/curategpt/wrappers/literature/wikipedia_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/literature/wikipedia_wrapper.py rename to src/curategpt/wrappers/literature/wikipedia_wrapper.py index 030be23..74312b0 100644 --- a/src/curate_gpt/wrappers/literature/wikipedia_wrapper.py +++ b/src/curategpt/wrappers/literature/wikipedia_wrapper.py @@ -8,7 +8,7 @@ import inflection import requests -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/ontology/__init__.py b/src/curategpt/wrappers/ontology/__init__.py similarity index 100% rename from src/curate_gpt/wrappers/ontology/__init__.py rename to src/curategpt/wrappers/ontology/__init__.py diff --git a/src/curate_gpt/wrappers/ontology/bioportal_wrapper.py b/src/curategpt/wrappers/ontology/bioportal_wrapper.py similarity index 85% rename from src/curate_gpt/wrappers/ontology/bioportal_wrapper.py rename to src/curategpt/wrappers/ontology/bioportal_wrapper.py index b45da64..fc5736c 100644 --- a/src/curate_gpt/wrappers/ontology/bioportal_wrapper.py +++ b/src/curategpt/wrappers/ontology/bioportal_wrapper.py @@ -2,7 +2,7 @@ from oaklib import get_adapter -from curate_gpt.wrappers.ontology.ontology_wrapper import OntologyWrapper +from curategpt.wrappers.ontology.ontology_wrapper import OntologyWrapper @dataclass diff --git a/src/curate_gpt/wrappers/ontology/cell_type.yaml b/src/curategpt/wrappers/ontology/cell_type.yaml similarity index 100% rename from src/curate_gpt/wrappers/ontology/cell_type.yaml rename to src/curategpt/wrappers/ontology/cell_type.yaml diff --git a/src/curate_gpt/wrappers/ontology/oboformat_wrapper.py b/src/curategpt/wrappers/ontology/oboformat_wrapper.py similarity index 95% rename from src/curate_gpt/wrappers/ontology/oboformat_wrapper.py rename to src/curategpt/wrappers/ontology/oboformat_wrapper.py index 7984ce8..58ae5f4 100644 --- a/src/curate_gpt/wrappers/ontology/oboformat_wrapper.py +++ b/src/curategpt/wrappers/ontology/oboformat_wrapper.py @@ -4,7 +4,7 @@ from dataclasses import dataclass from typing import ClassVar, Dict, Iterable, Iterator, Optional -from curate_gpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.base_wrapper import BaseWrapper logger = logging.getLogger(__name__) diff --git a/src/curate_gpt/wrappers/ontology/ontology.py b/src/curategpt/wrappers/ontology/ontology.py similarity index 100% rename from src/curate_gpt/wrappers/ontology/ontology.py rename to src/curategpt/wrappers/ontology/ontology.py diff --git a/src/curate_gpt/wrappers/ontology/ontology.yaml b/src/curategpt/wrappers/ontology/ontology.yaml similarity index 100% rename from src/curate_gpt/wrappers/ontology/ontology.yaml rename to src/curategpt/wrappers/ontology/ontology.yaml diff --git a/src/curate_gpt/wrappers/ontology/ontology_wrapper.py b/src/curategpt/wrappers/ontology/ontology_wrapper.py similarity index 97% rename from src/curate_gpt/wrappers/ontology/ontology_wrapper.py rename to src/curategpt/wrappers/ontology/ontology_wrapper.py index 7f4cc8f..b596d43 100644 --- a/src/curate_gpt/wrappers/ontology/ontology_wrapper.py +++ b/src/curategpt/wrappers/ontology/ontology_wrapper.py @@ -14,10 +14,10 @@ from oaklib.types import CURIE from oaklib.utilities.iterator_utils import chunk -from curate_gpt import DBAdapter -from curate_gpt.formatters.format_utils import camelify -from curate_gpt.wrappers.base_wrapper import BaseWrapper -from curate_gpt.wrappers.ontology.ontology import OntologyClass, Relationship +from curategpt import DBAdapter +from curategpt.formatters.format_utils import camelify +from curategpt.wrappers.base_wrapper import BaseWrapper +from curategpt.wrappers.ontology.ontology import OntologyClass, Relationship logger = logging.getLogger(__name__) diff --git a/tests/agents/conftest.py b/tests/agents/conftest.py index adc6b7b..d2e8cf9 100644 --- a/tests/agents/conftest.py +++ b/tests/agents/conftest.py @@ -1,8 +1,8 @@ import pytest -from curate_gpt import ChromaDBAdapter -from curate_gpt.store import SchemaProxy -from curate_gpt.wrappers.ontology import ONTOLOGY_MODEL_PATH +from curategpt import ChromaDBAdapter +from curategpt.store import SchemaProxy +from curategpt.wrappers.ontology import ONTOLOGY_MODEL_PATH from tests import INPUT_DBS diff --git a/tests/agents/test_chat.py b/tests/agents/test_chat.py index 5c45f62..6315fa2 100644 --- a/tests/agents/test_chat.py +++ b/tests/agents/test_chat.py @@ -2,8 +2,8 @@ import pytest -from curate_gpt.agents.chat_agent import ChatAgent -from curate_gpt.extract import BasicExtractor +from curategpt.agents.chat_agent import ChatAgent +from curategpt.extract import BasicExtractor from tests.store.conftest import requires_openai_api_key diff --git a/tests/agents/test_concept_recognizer.py b/tests/agents/test_concept_recognizer.py index bbcc722..596cd30 100644 --- a/tests/agents/test_concept_recognizer.py +++ b/tests/agents/test_concept_recognizer.py @@ -1,8 +1,8 @@ import pytest import yaml -from curate_gpt.agents.concept_recognition_agent import AnnotationMethod, ConceptRecognitionAgent -from curate_gpt.extract.basic_extractor import BasicExtractor +from curategpt.agents.concept_recognition_agent import AnnotationMethod, ConceptRecognitionAgent +from curategpt.extract.basic_extractor import BasicExtractor from tests.store.conftest import requires_openai_api_key diff --git a/tests/agents/test_dase.py b/tests/agents/test_dase.py index cd643a8..9726970 100644 --- a/tests/agents/test_dase.py +++ b/tests/agents/test_dase.py @@ -1,9 +1,9 @@ import pytest import yaml -from curate_gpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.extract.basic_extractor import BasicExtractor +from curategpt.agents.dase_agent import DatabaseAugmentedStructuredExtraction +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.extract.basic_extractor import BasicExtractor from tests.store.conftest import requires_openai_api_key diff --git a/tests/agents/test_dragon.py b/tests/agents/test_dragon.py index feb4621..841d87c 100644 --- a/tests/agents/test_dragon.py +++ b/tests/agents/test_dragon.py @@ -1,8 +1,8 @@ import pytest import yaml -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.extract.basic_extractor import BasicExtractor +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.extract.basic_extractor import BasicExtractor from tests.store.conftest import requires_openai_api_key diff --git a/tests/agents/test_mapper.py b/tests/agents/test_mapper.py index 3f4f8cf..c732730 100644 --- a/tests/agents/test_mapper.py +++ b/tests/agents/test_mapper.py @@ -1,8 +1,8 @@ import pytest -from curate_gpt.agents import MappingAgent -from curate_gpt.agents.mapping_agent import MappingPredicate -from curate_gpt.extract import BasicExtractor +from curategpt.agents import MappingAgent +from curategpt.agents.mapping_agent import MappingPredicate +from curategpt.extract import BasicExtractor from tests.store.conftest import requires_openai_api_key diff --git a/tests/cli/test_chat_cli.py b/tests/cli/test_chat_cli.py index 1e04694..e936953 100644 --- a/tests/cli/test_chat_cli.py +++ b/tests/cli/test_chat_cli.py @@ -1,4 +1,4 @@ -from curate_gpt.cli import main +from curategpt.cli import main from tests import INPUT_DIR from tests.store.conftest import requires_openai_api_key diff --git a/tests/cli/test_cli.py b/tests/cli/test_cli.py index c193386..7d41a29 100644 --- a/tests/cli/test_cli.py +++ b/tests/cli/test_cli.py @@ -1,4 +1,4 @@ -from curate_gpt.cli import main +from curategpt.cli import main def test_help(runner): diff --git a/tests/cli/test_store_cli.py b/tests/cli/test_store_cli.py index d7087dd..334c3bb 100644 --- a/tests/cli/test_store_cli.py +++ b/tests/cli/test_store_cli.py @@ -1,4 +1,4 @@ -from curate_gpt.cli import main +from curategpt.cli import main from tests import INPUT_DIR ONT_DB = str(INPUT_DIR / "go-nucleus.db") diff --git a/tests/evaluation/conftest.py b/tests/evaluation/conftest.py index c3724dc..fe0eb08 100644 --- a/tests/evaluation/conftest.py +++ b/tests/evaluation/conftest.py @@ -1,9 +1,9 @@ import pytest from oaklib import get_adapter -from curate_gpt import ChromaDBAdapter -from curate_gpt.store import SchemaProxy -from curate_gpt.wrappers.ontology import ONTOLOGY_MODEL_PATH, OntologyWrapper +from curategpt import ChromaDBAdapter +from curategpt.store import SchemaProxy +from curategpt.wrappers.ontology import ONTOLOGY_MODEL_PATH, OntologyWrapper from tests import INPUT_DBS, INPUT_DIR diff --git a/tests/evaluation/test_calculate_statistics.py b/tests/evaluation/test_calculate_statistics.py index 9aefff8..71d19e5 100644 --- a/tests/evaluation/test_calculate_statistics.py +++ b/tests/evaluation/test_calculate_statistics.py @@ -1,11 +1,11 @@ import pytest -from curate_gpt.evaluation.calc_statistics import ( +from curategpt.evaluation.calc_statistics import ( aggregate_metrics, calculate_metrics, evaluate_predictions, ) -from curate_gpt.evaluation.evaluation_datamodel import ClassificationOutcome +from curategpt.evaluation.evaluation_datamodel import ClassificationOutcome all_metrics = [] diff --git a/tests/evaluation/test_runner.py b/tests/evaluation/test_runner.py index bee1eff..34de185 100644 --- a/tests/evaluation/test_runner.py +++ b/tests/evaluation/test_runner.py @@ -1,8 +1,8 @@ import pytest import yaml -from curate_gpt.evaluation.evaluation_datamodel import Task -from curate_gpt.evaluation.runner import run_task +from curategpt.evaluation.evaluation_datamodel import Task +from curategpt.evaluation.runner import run_task from tests import OUTPUT_DIR from tests.store.conftest import requires_openai_api_key diff --git a/tests/extract/test_extractor.py b/tests/extract/test_extractor.py index c2f60cd..f173ad6 100644 --- a/tests/extract/test_extractor.py +++ b/tests/extract/test_extractor.py @@ -4,11 +4,11 @@ from linkml_runtime.utils.schema_builder import SchemaBuilder from pydantic import BaseModel, ConfigDict -from curate_gpt.extract.basic_extractor import BasicExtractor -from curate_gpt.extract.extractor import AnnotatedObject -from curate_gpt.extract.openai_extractor import OpenAIExtractor -from curate_gpt.extract.recursive_extractor import RecursiveExtractor -from curate_gpt.store.schema_proxy import SchemaProxy +from curategpt.extract.basic_extractor import BasicExtractor +from curategpt.extract.extractor import AnnotatedObject +from curategpt.extract.openai_extractor import OpenAIExtractor +from curategpt.extract.recursive_extractor import RecursiveExtractor +from curategpt.store.schema_proxy import SchemaProxy from tests.store.conftest import requires_openai_api_key diff --git a/tests/input/dbs/go-nocleus-duck b/tests/input/dbs/go-nocleus-duck new file mode 100644 index 0000000..ddf0ed5 Binary files /dev/null and b/tests/input/dbs/go-nocleus-duck differ diff --git a/tests/input/dbs/go-nucleus-chroma/chroma.sqlite3 b/tests/input/dbs/go-nucleus-chroma/chroma.sqlite3 index a7c8db7..8f68614 100644 Binary files a/tests/input/dbs/go-nucleus-chroma/chroma.sqlite3 and b/tests/input/dbs/go-nucleus-chroma/chroma.sqlite3 differ diff --git a/tests/store/test_chromadb_adapter.py b/tests/store/test_chromadb_adapter.py index 187f193..a05d84a 100644 --- a/tests/store/test_chromadb_adapter.py +++ b/tests/store/test_chromadb_adapter.py @@ -6,9 +6,9 @@ from linkml_runtime.utils.schema_builder import SchemaBuilder from oaklib import get_adapter -from curate_gpt.store.chromadb_adapter import ChromaDBAdapter -from curate_gpt.store.schema_proxy import SchemaProxy -from curate_gpt.wrappers.ontology import ONTOLOGY_MODEL_PATH, OntologyWrapper +from curategpt.store.chromadb_adapter import ChromaDBAdapter +from curategpt.store.schema_proxy import SchemaProxy +from curategpt.wrappers.ontology import ONTOLOGY_MODEL_PATH, OntologyWrapper from tests import INPUT_DBS, INPUT_DIR, OUTPUT_CHROMA_DB_PATH, OUTPUT_DIR from tests.store.conftest import requires_openai_api_key diff --git a/tests/store/test_duckdb_adapter.py b/tests/store/test_duckdb_adapter.py index 61ad2b7..3ba6a4b 100644 --- a/tests/store/test_duckdb_adapter.py +++ b/tests/store/test_duckdb_adapter.py @@ -7,9 +7,9 @@ from linkml_runtime.utils.schema_builder import SchemaBuilder from oaklib import get_adapter -from curate_gpt.store.duckdb_adapter import DuckDBAdapter -from curate_gpt.store.schema_proxy import SchemaProxy -from curate_gpt.wrappers.ontology import OntologyWrapper +from curategpt.store.duckdb_adapter import DuckDBAdapter +from curategpt.store.schema_proxy import SchemaProxy +from curategpt.wrappers.ontology import OntologyWrapper from tests import INPUT_DBS, INPUT_DIR, OUTPUT_DIR, OUTPUT_DUCKDB_PATH from tests.store.conftest import requires_openai_api_key diff --git a/tests/store/test_in_memory_adapter.py b/tests/store/test_in_memory_adapter.py index bd66ee9..2185fcd 100644 --- a/tests/store/test_in_memory_adapter.py +++ b/tests/store/test_in_memory_adapter.py @@ -3,9 +3,9 @@ import pytest from linkml_runtime.utils.schema_builder import SchemaBuilder -from curate_gpt import DBAdapter -from curate_gpt.store import get_store -from curate_gpt.store.schema_proxy import SchemaProxy +from curategpt import DBAdapter +from curategpt.store import get_store +from curategpt.store.schema_proxy import SchemaProxy from tests import OUTPUT_DIR EMPTY_DB_PATH = OUTPUT_DIR / "empty_db" diff --git a/tests/utils/helper.py b/tests/utils/helper.py index 81294f7..e680fe7 100644 --- a/tests/utils/helper.py +++ b/tests/utils/helper.py @@ -1,6 +1,6 @@ from pathlib import Path -from src.curate_gpt.store import ChromaDBAdapter +from src.curategpt.store import ChromaDBAdapter DEBUG_MODE = False diff --git a/tests/utils/test_search.py b/tests/utils/test_search.py index 5b17539..56e17d6 100644 --- a/tests/utils/test_search.py +++ b/tests/utils/test_search.py @@ -1,7 +1,7 @@ import numpy as np import pytest -from curate_gpt.utils.vector_algorithms import mmr_diversified_search +from curategpt.utils.vector_algorithms import mmr_diversified_search vectors = np.array( [ diff --git a/tests/wrappers/test_bioportal.py b/tests/wrappers/test_bioportal.py index 53f36cd..54c91ff 100644 --- a/tests/wrappers/test_bioportal.py +++ b/tests/wrappers/test_bioportal.py @@ -2,9 +2,9 @@ import pytest -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.ontology.bioportal_wrapper import BioportalWrapper -from curate_gpt.wrappers.ontology.ontology_wrapper import OntologyWrapper +from curategpt.extract import BasicExtractor +from curategpt.wrappers.ontology.bioportal_wrapper import BioportalWrapper +from curategpt.wrappers.ontology.ontology_wrapper import OntologyWrapper from tests import OUTPUT_DIR from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db diff --git a/tests/wrappers/test_clinvar.py b/tests/wrappers/test_clinvar.py index 7e52e8b..ac14238 100644 --- a/tests/wrappers/test_clinvar.py +++ b/tests/wrappers/test_clinvar.py @@ -5,10 +5,10 @@ import requests import yaml -from curate_gpt.agents.chat_agent import ChatAgent -from curate_gpt.agents.dragon_agent import DragonAgent -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.clinical.clinvar_wrapper import ClinVarWrapper +from curategpt.agents.chat_agent import ChatAgent +from curategpt.agents.dragon_agent import DragonAgent +from curategpt.extract import BasicExtractor +from curategpt.wrappers.clinical.clinvar_wrapper import ClinVarWrapper from tests import INPUT_DIR, OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db diff --git a/tests/wrappers/test_evidence_agent.py b/tests/wrappers/test_evidence_agent.py index 885631a..37fb842 100644 --- a/tests/wrappers/test_evidence_agent.py +++ b/tests/wrappers/test_evidence_agent.py @@ -4,10 +4,10 @@ import pytest import yaml -from curate_gpt.agents.evidence_agent import EvidenceAgent -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers import BaseWrapper -from curate_gpt.wrappers.literature import PubmedWrapper, WikipediaWrapper +from curategpt.agents.evidence_agent import EvidenceAgent +from curategpt.extract import BasicExtractor +from curategpt.wrappers import BaseWrapper +from curategpt.wrappers.literature import PubmedWrapper, WikipediaWrapper from tests import OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db diff --git a/tests/wrappers/test_filesystem.py b/tests/wrappers/test_filesystem.py index 78ec726..7193792 100644 --- a/tests/wrappers/test_filesystem.py +++ b/tests/wrappers/test_filesystem.py @@ -1,6 +1,6 @@ from pathlib import Path -from curate_gpt.wrappers import get_wrapper +from curategpt.wrappers import get_wrapper THIS = Path(__file__).name diff --git a/tests/wrappers/test_gocam.py b/tests/wrappers/test_gocam.py index 61b7e1d..6a50248 100644 --- a/tests/wrappers/test_gocam.py +++ b/tests/wrappers/test_gocam.py @@ -3,7 +3,7 @@ import pytest import yaml -from curate_gpt.wrappers.bio.gocam_wrapper import GOCAMWrapper +from curategpt.wrappers.bio.gocam_wrapper import GOCAMWrapper from tests import INPUT_DIR diff --git a/tests/wrappers/test_hpoa.py b/tests/wrappers/test_hpoa.py index 3ea5da8..f47b88d 100644 --- a/tests/wrappers/test_hpoa.py +++ b/tests/wrappers/test_hpoa.py @@ -3,7 +3,7 @@ import pytest import yaml -from curate_gpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper +from curategpt.wrappers.clinical.hpoa_wrapper import HPOAWrapper from tests import INPUT_DIR, OUTPUT_DIR TEMP_DB = OUTPUT_DIR / "obj_tmp" diff --git a/tests/wrappers/test_json.py b/tests/wrappers/test_json.py index df0b0d0..69c3a36 100644 --- a/tests/wrappers/test_json.py +++ b/tests/wrappers/test_json.py @@ -1,4 +1,4 @@ -from curate_gpt.wrappers import get_wrapper +from curategpt.wrappers import get_wrapper from tests import INPUT_DIR diff --git a/tests/wrappers/test_linkml_schema.py b/tests/wrappers/test_linkml_schema.py index e8502f0..e37e5c4 100644 --- a/tests/wrappers/test_linkml_schema.py +++ b/tests/wrappers/test_linkml_schema.py @@ -1,4 +1,4 @@ -from curate_gpt.wrappers import get_wrapper +from curategpt.wrappers import get_wrapper from tests import INPUT_DIR diff --git a/tests/wrappers/test_ncbi_biosample.py b/tests/wrappers/test_ncbi_biosample.py index 57f63a8..b12d5ca 100644 --- a/tests/wrappers/test_ncbi_biosample.py +++ b/tests/wrappers/test_ncbi_biosample.py @@ -3,9 +3,9 @@ import yaml -from curate_gpt.agents.chat_agent import ChatAgent -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.investigation.ncbi_biosample_wrapper import NCBIBiosampleWrapper +from curategpt.agents.chat_agent import ChatAgent +from curategpt.extract import BasicExtractor +from curategpt.wrappers.investigation.ncbi_biosample_wrapper import NCBIBiosampleWrapper from tests import OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import create_db_dir, setup_db diff --git a/tests/wrappers/test_ontology.py b/tests/wrappers/test_ontology.py index cf77251..fb45ffc 100644 --- a/tests/wrappers/test_ontology.py +++ b/tests/wrappers/test_ontology.py @@ -5,8 +5,8 @@ from oaklib import get_adapter from oaklib.datamodels.obograph import GraphDocument -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.ontology.ontology_wrapper import OntologyWrapper +from curategpt.extract import BasicExtractor +from curategpt.wrappers.ontology.ontology_wrapper import OntologyWrapper from tests import INPUT_DIR, OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db diff --git a/tests/wrappers/test_pmc.py b/tests/wrappers/test_pmc.py index 1b0609c..91a8c88 100644 --- a/tests/wrappers/test_pmc.py +++ b/tests/wrappers/test_pmc.py @@ -4,10 +4,10 @@ import pytest import yaml -from curate_gpt import ChromaDBAdapter -from curate_gpt.agents.chat_agent import ChatAgent -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.literature.pmc_wrapper import PMCWrapper +from curategpt import ChromaDBAdapter +from curategpt.agents.chat_agent import ChatAgent +from curategpt.extract import BasicExtractor +from curategpt.wrappers.literature.pmc_wrapper import PMCWrapper from tests import INPUT_DIR, OUTPUT_DIR from tests.utils.helper import DEBUG_MODE, create_db_dir diff --git a/tests/wrappers/test_pubmed.py b/tests/wrappers/test_pubmed.py index 702dfd5..baf9e68 100644 --- a/tests/wrappers/test_pubmed.py +++ b/tests/wrappers/test_pubmed.py @@ -3,9 +3,9 @@ import pytest -from curate_gpt.agents.chat_agent import ChatAgent -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.literature import PubmedWrapper +from curategpt.agents.chat_agent import ChatAgent +from curategpt.extract import BasicExtractor +from curategpt.wrappers.literature import PubmedWrapper from tests import OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db diff --git a/tests/wrappers/test_wikipedia.py b/tests/wrappers/test_wikipedia.py index f684fb9..3527488 100644 --- a/tests/wrappers/test_wikipedia.py +++ b/tests/wrappers/test_wikipedia.py @@ -4,8 +4,8 @@ import pytest import yaml -from curate_gpt.extract import BasicExtractor -from curate_gpt.wrappers.literature import WikipediaWrapper +from curategpt.extract import BasicExtractor +from curategpt.wrappers.literature import WikipediaWrapper from tests import OUTPUT_DIR from tests.store.conftest import requires_openai_api_key from tests.utils.helper import DEBUG_MODE, create_db_dir, setup_db