alvinhenrick commited on
Commit
c1a5559
1 Parent(s): ceddea8

Add support for kdbai

Browse files
medirag/index/kdbai.py ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from llama_index.core import VectorStoreIndex, StorageContext, Settings, load_index_from_storage
2
+ from llama_index.core.node_parser import SentenceSplitter, SemanticSplitterNodeParser
3
+ from llama_index.embeddings.huggingface import HuggingFaceEmbedding
4
+ from llama_index.vector_stores.kdbai import KDBAIVectorStore
5
+ import kdbai_client as kdbai
6
+ import os
7
+
8
+
9
+ class DailyMedIndexer:
10
+ def __init__(self, model_name="nuvocare/WikiMedical_sent_biobert"):
11
+ self.model_name = model_name
12
+ self._initialize_embedding_model()
13
+ self.session = kdbai.Session(api_key=os.getenv('KDBAI_API_KEY'),
14
+ endpoint=os.getenv('KDBAI_ENDPOINT'))
15
+ self.vector_store = KDBAIVectorStore(self.session.table("daily_med"))
16
+ self.vector_store_index = None
17
+
18
+ def _initialize_embedding_model(self):
19
+ # Initialize the embedding model
20
+ embed_model = HuggingFaceEmbedding(model_name=self.model_name)
21
+ Settings.embed_model = embed_model
22
+
23
+ def load_index(self, documents=None):
24
+ """
25
+ Load the index from existing storage or create a new one from provided documents.
26
+ """
27
+ self._initialize_embedding_model()
28
+
29
+ if documents:
30
+ return self._build_index_from_documents(documents)
31
+ else:
32
+ return self._load_existing_index()
33
+
34
+ def _build_index_from_documents(self, documents):
35
+ print("Building index from documents...")
36
+
37
+ storage_context = StorageContext.from_defaults(vector_store=self.vector_store)
38
+ chunk = SemanticSplitterNodeParser(buffer_size=1, breakpoint_percentile_threshold=95,
39
+ embed_model=Settings.embed_model)
40
+ self.vector_store_index = VectorStoreIndex.from_documents(
41
+ documents,
42
+ storage_context=storage_context,
43
+ transformations=[chunk]
44
+ )
45
+ return self.vector_store_index
46
+
47
+ def _load_existing_index(self):
48
+ try:
49
+ print("Loading index from storage context...")
50
+ self.vector_store_index = VectorStoreIndex.from_vector_store(self.vector_store)
51
+ return self.vector_store_index
52
+ except Exception as e:
53
+ raise ValueError(f"Failed to load index from storage context: {e}")
54
+
55
+ def retrieve(self, query, top_k=3):
56
+ """
57
+ Retrieve the top-k results based on the query.
58
+ """
59
+ if not self.vector_store_index:
60
+ raise ValueError("Vector store is not initialized. Please index documents first.")
61
+
62
+ retriever = self.vector_store_index.as_retriever(similarity_top_k=top_k)
63
+ return retriever.retrieve(query)
misc/__init__.py ADDED
File without changes
misc/create_kdbai_table.py ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+
3
+ from dotenv import load_dotenv
4
+
5
+ load_dotenv()
6
+
7
+ import kdbai_client as kdbai
8
+
9
+ session = kdbai.Session(api_key=os.getenv('KDBAI_API_KEY'), endpoint=os.getenv('KDBAI_ENDPOINT'))
10
+
11
+ schema = dict(
12
+ columns=[
13
+ dict(name="document_id", pytype="bytes"),
14
+ dict(name="text", pytype="bytes"),
15
+ dict(
16
+ name="embedding",
17
+ vectorIndex=dict(type="flat", metric="L2", dims=768),
18
+ ),
19
+ ]
20
+ )
21
+
22
+ KDBAI_TABLE_NAME = "daily_med"
23
+
24
+ # First ensure the table does not already exist
25
+ if KDBAI_TABLE_NAME in session.list():
26
+ session.table(KDBAI_TABLE_NAME).drop()
27
+
28
+ # Create the table
29
+ table = session.create_table(KDBAI_TABLE_NAME, schema)
poetry.lock CHANGED
@@ -1561,6 +1561,25 @@ files = [
1561
  {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"},
1562
  ]
1563
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1564
  [[package]]
1565
  name = "kiwisolver"
1566
  version = "1.4.5"
@@ -1676,19 +1695,19 @@ files = [
1676
 
1677
  [[package]]
1678
  name = "langchain"
1679
- version = "0.2.14"
1680
  description = "Building applications with LLMs through composability"
1681
  optional = false
1682
  python-versions = "<4.0,>=3.8.1"
1683
  files = [
1684
- {file = "langchain-0.2.14-py3-none-any.whl", hash = "sha256:eed76194ee7d9c081037a3df7868d4de90e0410b51fc1ca933a8379e464bf40c"},
1685
- {file = "langchain-0.2.14.tar.gz", hash = "sha256:dc2aa5a58882054fb5d043c39ab8332ebd055f88f17839da68e1c7fd0a4fefe2"},
1686
  ]
1687
 
1688
  [package.dependencies]
1689
  aiohttp = ">=3.8.3,<4.0.0"
1690
  async-timeout = {version = ">=4.0.0,<5.0.0", markers = "python_version < \"3.11\""}
1691
- langchain-core = ">=0.2.32,<0.3.0"
1692
  langchain-text-splitters = ">=0.2.0,<0.3.0"
1693
  langsmith = ">=0.1.17,<0.2.0"
1694
  numpy = [
@@ -1703,13 +1722,13 @@ tenacity = ">=8.1.0,<8.4.0 || >8.4.0,<9.0.0"
1703
 
1704
  [[package]]
1705
  name = "langchain-core"
1706
- version = "0.2.35"
1707
  description = "Building applications with LLMs through composability"
1708
  optional = false
1709
  python-versions = "<4.0,>=3.8.1"
1710
  files = [
1711
- {file = "langchain_core-0.2.35-py3-none-any.whl", hash = "sha256:e994fb8598e919842205824836a584243c1fb7f44268f6f14921c529667c4e6e"},
1712
- {file = "langchain_core-0.2.35.tar.gz", hash = "sha256:da8f51355a4a285345c41a3232fd0f1cc3a33726eb7b3557b753ffabfeb68b3f"},
1713
  ]
1714
 
1715
  [package.dependencies]
@@ -1740,13 +1759,13 @@ langchain-core = ">=0.2.10,<0.3.0"
1740
 
1741
  [[package]]
1742
  name = "langsmith"
1743
- version = "0.1.105"
1744
  description = "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform."
1745
  optional = false
1746
  python-versions = "<4.0,>=3.8.1"
1747
  files = [
1748
- {file = "langsmith-0.1.105-py3-none-any.whl", hash = "sha256:a0098d0bc60ee79792109b0c1fef8252e21fd2dc424f4d902b8d9eb75160438b"},
1749
- {file = "langsmith-0.1.105.tar.gz", hash = "sha256:a8717ef90f3f740c202aa6878da89d4581ff28998336b48b831a92b855c460c3"},
1750
  ]
1751
 
1752
  [package.dependencies]
@@ -1776,13 +1795,13 @@ openai = ">=1.14.0"
1776
 
1777
  [[package]]
1778
  name = "llama-index-core"
1779
- version = "0.11.1"
1780
  description = "Interface between LLMs and your data"
1781
  optional = false
1782
  python-versions = "<4.0,>=3.8.1"
1783
  files = [
1784
- {file = "llama_index_core-0.11.1-py3-none-any.whl", hash = "sha256:7d86c72be272c13f2c8fd5c62f27aba08a38e23cc5d28e02509d69909859102d"},
1785
- {file = "llama_index_core-0.11.1.tar.gz", hash = "sha256:5c8b5cb1313866ff38ce91bea53a72519a52c9dabc0ca9d5c8b63aa8d3b2dd23"},
1786
  ]
1787
 
1788
  [package.dependencies]
@@ -1824,6 +1843,21 @@ huggingface-hub = {version = ">=0.19.0", extras = ["inference"]}
1824
  llama-index-core = ">=0.11.0,<0.12.0"
1825
  sentence-transformers = ">=2.6.1"
1826
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1827
  [[package]]
1828
  name = "llama-index-llms-openai"
1829
  version = "0.2.0"
@@ -1889,6 +1923,23 @@ files = [
1889
  [package.dependencies]
1890
  llama-index-core = ">=0.11.0,<0.12.0"
1891
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1892
  [[package]]
1893
  name = "lxml"
1894
  version = "5.3.0"
@@ -2861,76 +2912,71 @@ files = [
2861
 
2862
  [[package]]
2863
  name = "pandas"
2864
- version = "2.2.2"
2865
  description = "Powerful data structures for data analysis, time series, and statistics"
2866
  optional = false
2867
  python-versions = ">=3.9"
2868
  files = [
2869
- {file = "pandas-2.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90c6fca2acf139569e74e8781709dccb6fe25940488755716d1d354d6bc58bce"},
2870
- {file = "pandas-2.2.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7adfc142dac335d8c1e0dcbd37eb8617eac386596eb9e1a1b77791cf2498238"},
2871
- {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4abfe0be0d7221be4f12552995e58723c7422c80a659da13ca382697de830c08"},
2872
- {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8635c16bf3d99040fdf3ca3db669a7250ddf49c55dc4aa8fe0ae0fa8d6dcc1f0"},
2873
- {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:40ae1dffb3967a52203105a077415a86044a2bea011b5f321c6aa64b379a3f51"},
2874
- {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8e5a0b00e1e56a842f922e7fae8ae4077aee4af0acb5ae3622bd4b4c30aedf99"},
2875
- {file = "pandas-2.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:ddf818e4e6c7c6f4f7c8a12709696d193976b591cc7dc50588d3d1a6b5dc8772"},
2876
- {file = "pandas-2.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:696039430f7a562b74fa45f540aca068ea85fa34c244d0deee539cb6d70aa288"},
2877
- {file = "pandas-2.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8e90497254aacacbc4ea6ae5e7a8cd75629d6ad2b30025a4a8b09aa4faf55151"},
2878
- {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58b84b91b0b9f4bafac2a0ac55002280c094dfc6402402332c0913a59654ab2b"},
2879
- {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2123dc9ad6a814bcdea0f099885276b31b24f7edf40f6cdbc0912672e22eee"},
2880
- {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2925720037f06e89af896c70bca73459d7e6a4be96f9de79e2d440bd499fe0db"},
2881
- {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0cace394b6ea70c01ca1595f839cf193df35d1575986e484ad35c4aeae7266c1"},
2882
- {file = "pandas-2.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:873d13d177501a28b2756375d59816c365e42ed8417b41665f346289adc68d24"},
2883
- {file = "pandas-2.2.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9dfde2a0ddef507a631dc9dc4af6a9489d5e2e740e226ad426a05cabfbd7c8ef"},
2884
- {file = "pandas-2.2.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b79011ff7a0f4b1d6da6a61aa1aa604fb312d6647de5bad20013682d1429ce"},
2885
- {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cb51fe389360f3b5a4d57dbd2848a5f033350336ca3b340d1c53a1fad33bcad"},
2886
- {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee3a87076c0756de40b05c5e9a6069c035ba43e8dd71c379e68cab2c20f16ad"},
2887
- {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3e374f59e440d4ab45ca2fffde54b81ac3834cf5ae2cdfa69c90bc03bde04d76"},
2888
- {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:43498c0bdb43d55cb162cdc8c06fac328ccb5d2eabe3cadeb3529ae6f0517c32"},
2889
- {file = "pandas-2.2.2-cp312-cp312-win_amd64.whl", hash = "sha256:d187d355ecec3629624fccb01d104da7d7f391db0311145817525281e2804d23"},
2890
- {file = "pandas-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0ca6377b8fca51815f382bd0b697a0814c8bda55115678cbc94c30aacbb6eff2"},
2891
- {file = "pandas-2.2.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9057e6aa78a584bc93a13f0a9bf7e753a5e9770a30b4d758b8d5f2a62a9433cd"},
2892
- {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:001910ad31abc7bf06f49dcc903755d2f7f3a9186c0c040b827e522e9cef0863"},
2893
- {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66b479b0bd07204e37583c191535505410daa8df638fd8e75ae1b383851fe921"},
2894
- {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a77e9d1c386196879aa5eb712e77461aaee433e54c68cf253053a73b7e49c33a"},
2895
- {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92fd6b027924a7e178ac202cfbe25e53368db90d56872d20ffae94b96c7acc57"},
2896
- {file = "pandas-2.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:640cef9aa381b60e296db324337a554aeeb883ead99dc8f6c18e81a93942f5f4"},
2897
- {file = "pandas-2.2.2.tar.gz", hash = "sha256:9e79019aba43cb4fda9e4d983f8e88ca0373adbb697ae9c6c43093218de28b54"},
2898
  ]
2899
 
2900
  [package.dependencies]
2901
  numpy = [
2902
- {version = ">=1.22.4", markers = "python_version < \"3.11\""},
2903
- {version = ">=1.23.2", markers = "python_version == \"3.11\""},
2904
- {version = ">=1.26.0", markers = "python_version >= \"3.12\""},
2905
  ]
2906
  python-dateutil = ">=2.8.2"
2907
  pytz = ">=2020.1"
2908
- tzdata = ">=2022.7"
2909
 
2910
  [package.extras]
2911
- all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"]
2912
- aws = ["s3fs (>=2022.11.0)"]
2913
- clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"]
2914
- compression = ["zstandard (>=0.19.0)"]
2915
- computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"]
2916
  consortium-standard = ["dataframe-api-compat (>=0.1.7)"]
2917
- excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"]
2918
- feather = ["pyarrow (>=10.0.1)"]
2919
- fss = ["fsspec (>=2022.11.0)"]
2920
- gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"]
2921
- hdf5 = ["tables (>=3.8.0)"]
2922
- html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"]
2923
- mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"]
2924
- output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"]
2925
- parquet = ["pyarrow (>=10.0.1)"]
2926
- performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"]
2927
- plot = ["matplotlib (>=3.6.3)"]
2928
- postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"]
2929
- pyarrow = ["pyarrow (>=10.0.1)"]
2930
- spss = ["pyreadstat (>=1.2.0)"]
2931
- sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"]
2932
  test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"]
2933
- xml = ["lxml (>=4.9.2)"]
2934
 
2935
  [[package]]
2936
  name = "parso"
@@ -3371,6 +3417,59 @@ files = [
3371
  [package.extras]
3372
  windows-terminal = ["colorama (>=0.4.6)"]
3373
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3374
  [[package]]
3375
  name = "pyparsing"
3376
  version = "3.1.4"
@@ -4440,6 +4539,17 @@ dev = ["tokenizers[testing]"]
4440
  docs = ["setuptools-rust", "sphinx", "sphinx-rtd-theme"]
4441
  testing = ["black (==22.3)", "datasets", "numpy", "pytest", "requests", "ruff"]
4442
 
 
 
 
 
 
 
 
 
 
 
 
4443
  [[package]]
4444
  name = "tomli"
4445
  version = "2.0.1"
@@ -5260,4 +5370,4 @@ multidict = ">=4.0"
5260
  [metadata]
5261
  lock-version = "2.0"
5262
  python-versions = ">=3.10,<3.13"
5263
- content-hash = "45accb38e74b5646d74896c8545504072d577c8a87b71d379753672353e613be"
 
1561
  {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"},
1562
  ]
1563
 
1564
+ [[package]]
1565
+ name = "kdbai-client"
1566
+ version = "1.2.4"
1567
+ description = "KDB.AI Client for Python"
1568
+ optional = false
1569
+ python-versions = "<4.0,>=3.8"
1570
+ files = [
1571
+ {file = "kdbai_client-1.2.4-py3-none-any.whl", hash = "sha256:cf5043e2d0033186a25bce566901db96d98053d764f01d2d0b32d03b188e5584"},
1572
+ ]
1573
+
1574
+ [package.dependencies]
1575
+ pandas = ">=1.5.0"
1576
+ pykx = ">=2.1.1,<3.0.0"
1577
+ requests = "*"
1578
+
1579
+ [package.extras]
1580
+ lint = ["mypy", "mypy-gitlab-code-quality"]
1581
+ test = ["pytest (>=7.3.2,<8.0.0)", "pytest-cov (>=4.0.0,<5.0.0)", "pytest-mock"]
1582
+
1583
  [[package]]
1584
  name = "kiwisolver"
1585
  version = "1.4.5"
 
1695
 
1696
  [[package]]
1697
  name = "langchain"
1698
+ version = "0.2.15"
1699
  description = "Building applications with LLMs through composability"
1700
  optional = false
1701
  python-versions = "<4.0,>=3.8.1"
1702
  files = [
1703
+ {file = "langchain-0.2.15-py3-none-any.whl", hash = "sha256:9e6231441870aaa8523be24a5785ccccfdde759a7e27dd082b6ec80f68e49dec"},
1704
+ {file = "langchain-0.2.15.tar.gz", hash = "sha256:f613ce7594be34f9bac687134a56f6e8274951907b798dbd037aefc95df78953"},
1705
  ]
1706
 
1707
  [package.dependencies]
1708
  aiohttp = ">=3.8.3,<4.0.0"
1709
  async-timeout = {version = ">=4.0.0,<5.0.0", markers = "python_version < \"3.11\""}
1710
+ langchain-core = ">=0.2.35,<0.3.0"
1711
  langchain-text-splitters = ">=0.2.0,<0.3.0"
1712
  langsmith = ">=0.1.17,<0.2.0"
1713
  numpy = [
 
1722
 
1723
  [[package]]
1724
  name = "langchain-core"
1725
+ version = "0.2.36"
1726
  description = "Building applications with LLMs through composability"
1727
  optional = false
1728
  python-versions = "<4.0,>=3.8.1"
1729
  files = [
1730
+ {file = "langchain_core-0.2.36-py3-none-any.whl", hash = "sha256:eabce6e7538cb9dc60db4bc1eb584bbb91a5e7e02a96d5b65b4a6ab151081b6d"},
1731
+ {file = "langchain_core-0.2.36.tar.gz", hash = "sha256:56f2367070e8afc43922bba1d046035a144b4e732a5474676403bd0eb33d85f2"},
1732
  ]
1733
 
1734
  [package.dependencies]
 
1759
 
1760
  [[package]]
1761
  name = "langsmith"
1762
+ version = "0.1.106"
1763
  description = "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform."
1764
  optional = false
1765
  python-versions = "<4.0,>=3.8.1"
1766
  files = [
1767
+ {file = "langsmith-0.1.106-py3-none-any.whl", hash = "sha256:a418161c98de72ee2c6eea6667c6217814b67db4b9a3a024788013384216ff35"},
1768
+ {file = "langsmith-0.1.106.tar.gz", hash = "sha256:64a890a05640d64692f5515ebb444b0457332a9cf9e7605c4651de6737a7d3a0"},
1769
  ]
1770
 
1771
  [package.dependencies]
 
1795
 
1796
  [[package]]
1797
  name = "llama-index-core"
1798
+ version = "0.11.2"
1799
  description = "Interface between LLMs and your data"
1800
  optional = false
1801
  python-versions = "<4.0,>=3.8.1"
1802
  files = [
1803
+ {file = "llama_index_core-0.11.2-py3-none-any.whl", hash = "sha256:6c55667c4943ba197199e21e9b0e4641449f5e5dca662b0c91f5306f8c114e4f"},
1804
+ {file = "llama_index_core-0.11.2.tar.gz", hash = "sha256:eec37976fe3b1baa3bb31bd3c5f6ea821555c7065ac6a55b71b5601a7e097977"},
1805
  ]
1806
 
1807
  [package.dependencies]
 
1843
  llama-index-core = ">=0.11.0,<0.12.0"
1844
  sentence-transformers = ">=2.6.1"
1845
 
1846
+ [[package]]
1847
+ name = "llama-index-embeddings-openai"
1848
+ version = "0.2.3"
1849
+ description = "llama-index embeddings openai integration"
1850
+ optional = false
1851
+ python-versions = "<4.0,>=3.8.1"
1852
+ files = [
1853
+ {file = "llama_index_embeddings_openai-0.2.3-py3-none-any.whl", hash = "sha256:be7d2aad0884e54d291af786b23d2feb7770cd1c3950f0de1fd5e36c60d83c06"},
1854
+ {file = "llama_index_embeddings_openai-0.2.3.tar.gz", hash = "sha256:2f7adef6b61fd4f1bea487166ff9a5ff063227686b7dbb5d2227e46450a7ec4c"},
1855
+ ]
1856
+
1857
+ [package.dependencies]
1858
+ llama-index-core = ">=0.11.0,<0.12.0"
1859
+ openai = ">=1.1.0"
1860
+
1861
  [[package]]
1862
  name = "llama-index-llms-openai"
1863
  version = "0.2.0"
 
1923
  [package.dependencies]
1924
  llama-index-core = ">=0.11.0,<0.12.0"
1925
 
1926
+ [[package]]
1927
+ name = "llama-index-vector-stores-kdbai"
1928
+ version = "0.3.1"
1929
+ description = "llama-index vector_stores kdbai integration"
1930
+ optional = false
1931
+ python-versions = "<4.0,>=3.8.1"
1932
+ files = [
1933
+ {file = "llama_index_vector_stores_kdbai-0.3.1-py3-none-any.whl", hash = "sha256:cb3f6fb793337d2b5bf0a83a7c2e242f92210d5dba20335bc16b0d9f6862df83"},
1934
+ {file = "llama_index_vector_stores_kdbai-0.3.1.tar.gz", hash = "sha256:06067e5fda5330f2527f448981592dbeaf14cd1895a44b04a760efc70fa5f8cf"},
1935
+ ]
1936
+
1937
+ [package.dependencies]
1938
+ kdbai-client = ">=1.1.0"
1939
+ llama-index-core = ">=0.11.0,<0.12.0"
1940
+ pandas = "*"
1941
+ pykx = ">=2.1.1,<3.0.0"
1942
+
1943
  [[package]]
1944
  name = "lxml"
1945
  version = "5.3.0"
 
2912
 
2913
  [[package]]
2914
  name = "pandas"
2915
+ version = "2.1.4"
2916
  description = "Powerful data structures for data analysis, time series, and statistics"
2917
  optional = false
2918
  python-versions = ">=3.9"
2919
  files = [
2920
+ {file = "pandas-2.1.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bdec823dc6ec53f7a6339a0e34c68b144a7a1fd28d80c260534c39c62c5bf8c9"},
2921
+ {file = "pandas-2.1.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:294d96cfaf28d688f30c918a765ea2ae2e0e71d3536754f4b6de0ea4a496d034"},
2922
+ {file = "pandas-2.1.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b728fb8deba8905b319f96447a27033969f3ea1fea09d07d296c9030ab2ed1d"},
2923
+ {file = "pandas-2.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00028e6737c594feac3c2df15636d73ace46b8314d236100b57ed7e4b9ebe8d9"},
2924
+ {file = "pandas-2.1.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:426dc0f1b187523c4db06f96fb5c8d1a845e259c99bda74f7de97bd8a3bb3139"},
2925
+ {file = "pandas-2.1.4-cp310-cp310-win_amd64.whl", hash = "sha256:f237e6ca6421265643608813ce9793610ad09b40154a3344a088159590469e46"},
2926
+ {file = "pandas-2.1.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b7d852d16c270e4331f6f59b3e9aa23f935f5c4b0ed2d0bc77637a8890a5d092"},
2927
+ {file = "pandas-2.1.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bd7d5f2f54f78164b3d7a40f33bf79a74cdee72c31affec86bfcabe7e0789821"},
2928
+ {file = "pandas-2.1.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0aa6e92e639da0d6e2017d9ccff563222f4eb31e4b2c3cf32a2a392fc3103c0d"},
2929
+ {file = "pandas-2.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d797591b6846b9db79e65dc2d0d48e61f7db8d10b2a9480b4e3faaddc421a171"},
2930
+ {file = "pandas-2.1.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d2d3e7b00f703aea3945995ee63375c61b2e6aa5aa7871c5d622870e5e137623"},
2931
+ {file = "pandas-2.1.4-cp311-cp311-win_amd64.whl", hash = "sha256:dc9bf7ade01143cddc0074aa6995edd05323974e6e40d9dbde081021ded8510e"},
2932
+ {file = "pandas-2.1.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:482d5076e1791777e1571f2e2d789e940dedd927325cc3cb6d0800c6304082f6"},
2933
+ {file = "pandas-2.1.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8a706cfe7955c4ca59af8c7a0517370eafbd98593155b48f10f9811da440248b"},
2934
+ {file = "pandas-2.1.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b0513a132a15977b4a5b89aabd304647919bc2169eac4c8536afb29c07c23540"},
2935
+ {file = "pandas-2.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9f17f2b6fc076b2a0078862547595d66244db0f41bf79fc5f64a5c4d635bead"},
2936
+ {file = "pandas-2.1.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:45d63d2a9b1b37fa6c84a68ba2422dc9ed018bdaa668c7f47566a01188ceeec1"},
2937
+ {file = "pandas-2.1.4-cp312-cp312-win_amd64.whl", hash = "sha256:f69b0c9bb174a2342818d3e2778584e18c740d56857fc5cdb944ec8bbe4082cf"},
2938
+ {file = "pandas-2.1.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3f06bda01a143020bad20f7a85dd5f4a1600112145f126bc9e3e42077c24ef34"},
2939
+ {file = "pandas-2.1.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ab5796839eb1fd62a39eec2916d3e979ec3130509930fea17fe6f81e18108f6a"},
2940
+ {file = "pandas-2.1.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edbaf9e8d3a63a9276d707b4d25930a262341bca9874fcb22eff5e3da5394732"},
2941
+ {file = "pandas-2.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ebfd771110b50055712b3b711b51bee5d50135429364d0498e1213a7adc2be8"},
2942
+ {file = "pandas-2.1.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8ea107e0be2aba1da619cc6ba3f999b2bfc9669a83554b1904ce3dd9507f0860"},
2943
+ {file = "pandas-2.1.4-cp39-cp39-win_amd64.whl", hash = "sha256:d65148b14788b3758daf57bf42725caa536575da2b64df9964c563b015230984"},
2944
+ {file = "pandas-2.1.4.tar.gz", hash = "sha256:fcb68203c833cc735321512e13861358079a96c174a61f5116a1de89c58c0ef7"},
 
 
 
 
2945
  ]
2946
 
2947
  [package.dependencies]
2948
  numpy = [
2949
+ {version = ">=1.22.4,<2", markers = "python_version < \"3.11\""},
2950
+ {version = ">=1.23.2,<2", markers = "python_version == \"3.11\""},
2951
+ {version = ">=1.26.0,<2", markers = "python_version >= \"3.12\""},
2952
  ]
2953
  python-dateutil = ">=2.8.2"
2954
  pytz = ">=2020.1"
2955
+ tzdata = ">=2022.1"
2956
 
2957
  [package.extras]
2958
+ all = ["PyQt5 (>=5.15.6)", "SQLAlchemy (>=1.4.36)", "beautifulsoup4 (>=4.11.1)", "bottleneck (>=1.3.4)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=0.8.1)", "fsspec (>=2022.05.0)", "gcsfs (>=2022.05.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.8.0)", "matplotlib (>=3.6.1)", "numba (>=0.55.2)", "numexpr (>=2.8.0)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pandas-gbq (>=0.17.5)", "psycopg2 (>=2.9.3)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.5)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "pyxlsb (>=1.0.9)", "qtpy (>=2.2.0)", "s3fs (>=2022.05.0)", "scipy (>=1.8.1)", "tables (>=3.7.0)", "tabulate (>=0.8.10)", "xarray (>=2022.03.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)", "zstandard (>=0.17.0)"]
2959
+ aws = ["s3fs (>=2022.05.0)"]
2960
+ clipboard = ["PyQt5 (>=5.15.6)", "qtpy (>=2.2.0)"]
2961
+ compression = ["zstandard (>=0.17.0)"]
2962
+ computation = ["scipy (>=1.8.1)", "xarray (>=2022.03.0)"]
2963
  consortium-standard = ["dataframe-api-compat (>=0.1.7)"]
2964
+ excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pyxlsb (>=1.0.9)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)"]
2965
+ feather = ["pyarrow (>=7.0.0)"]
2966
+ fss = ["fsspec (>=2022.05.0)"]
2967
+ gcp = ["gcsfs (>=2022.05.0)", "pandas-gbq (>=0.17.5)"]
2968
+ hdf5 = ["tables (>=3.7.0)"]
2969
+ html = ["beautifulsoup4 (>=4.11.1)", "html5lib (>=1.1)", "lxml (>=4.8.0)"]
2970
+ mysql = ["SQLAlchemy (>=1.4.36)", "pymysql (>=1.0.2)"]
2971
+ output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.8.10)"]
2972
+ parquet = ["pyarrow (>=7.0.0)"]
2973
+ performance = ["bottleneck (>=1.3.4)", "numba (>=0.55.2)", "numexpr (>=2.8.0)"]
2974
+ plot = ["matplotlib (>=3.6.1)"]
2975
+ postgresql = ["SQLAlchemy (>=1.4.36)", "psycopg2 (>=2.9.3)"]
2976
+ spss = ["pyreadstat (>=1.1.5)"]
2977
+ sql-other = ["SQLAlchemy (>=1.4.36)"]
 
2978
  test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"]
2979
+ xml = ["lxml (>=4.8.0)"]
2980
 
2981
  [[package]]
2982
  name = "parso"
 
3417
  [package.extras]
3418
  windows-terminal = ["colorama (>=0.4.6)"]
3419
 
3420
+ [[package]]
3421
+ name = "pykx"
3422
+ version = "2.5.3"
3423
+ description = "An interface between Python and q"
3424
+ optional = false
3425
+ python-versions = ">=3.7"
3426
+ files = [
3427
+ {file = "pykx-2.5.3-cp310-cp310-macosx_10_10_arm64.macosx_11_0_arm64.macosx_12_0_arm64.macosx_13_0_arm64.whl", hash = "sha256:754f4bbdbc5944ebf2ede3c1e45f80607fb6be5274fbcecd291a82e14f947e7f"},
3428
+ {file = "pykx-2.5.3-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:122b8d98ca91c4951d8c7b1c11de0672442b664078680254e943c20c902f76a2"},
3429
+ {file = "pykx-2.5.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de4e7c257d47e30501b1ce09fe7af37fdbf583079c1687738cda096bdec93172"},
3430
+ {file = "pykx-2.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:c3f986698e028156f8f1d267e5c776ea4846fbe57f547fa2734bd9cf9840d00d"},
3431
+ {file = "pykx-2.5.3-cp311-cp311-macosx_10_10_arm64.macosx_11_0_arm64.macosx_12_0_arm64.macosx_13_0_arm64.whl", hash = "sha256:404ddabb4378c163799133052bb6c94bbe5a887011858942efa54dfbe3cadc8d"},
3432
+ {file = "pykx-2.5.3-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:2af4e0c9ddfb65c8027fb3b7222c765019b51d9178878a09fd3bb9a465f08264"},
3433
+ {file = "pykx-2.5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1f79e856877c9665111c53a5896d889409fd55a69e43fecbc9c53b8636d0439"},
3434
+ {file = "pykx-2.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:c85c7338ccf0039a575c4ded7614282896b702ca8b1451f385f7c53ef43a8e08"},
3435
+ {file = "pykx-2.5.3-cp312-cp312-macosx_10_10_arm64.macosx_11_0_arm64.macosx_12_0_arm64.macosx_13_0_arm64.whl", hash = "sha256:2cfdf7adf5711b1a53ec7555cc93c34518302b10313f2559d115daf14a200f7c"},
3436
+ {file = "pykx-2.5.3-cp312-cp312-manylinux2014_aarch64.whl", hash = "sha256:a181777e1356fe2ed951e7f1a345a2a3bb0590d7ad2efbc90af3b412abf737be"},
3437
+ {file = "pykx-2.5.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0f825890d436dbee71694575b290da26ed1af3a571337fddd9f510318161288"},
3438
+ {file = "pykx-2.5.3-cp312-cp312-win_amd64.whl", hash = "sha256:1878bd664807a8de4eeadf7390b9ddeae6c8aaeecfa3cf3c605c07d7b36af16e"},
3439
+ {file = "pykx-2.5.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:4bbb5be1b2de1d135a037cc9f97b39014456232153fb39a13315ed7e64bba521"},
3440
+ {file = "pykx-2.5.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21a030f77ee01dfcf8f1edb1b585680e455c15b24555b548e609f7db23781c02"},
3441
+ {file = "pykx-2.5.3-cp37-cp37m-win_amd64.whl", hash = "sha256:02b9d46e0e7eb779645f9e34c5dfba47cc575b01ae910cdf2424f3cc8ae40030"},
3442
+ {file = "pykx-2.5.3-cp38-cp38-macosx_10_10_arm64.macosx_11_0_arm64.macosx_12_0_arm64.macosx_13_0_arm64.whl", hash = "sha256:c75429b245199a77f3ec02155f0ae7175c09e1b9180ddc672763ae339a10abf2"},
3443
+ {file = "pykx-2.5.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:815b43cf01befb1be58b8537d077e0b3aaffb7e0a5b531413a89e7ba8052d749"},
3444
+ {file = "pykx-2.5.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05290d8ed5a8ad68328f71b96f9341b9744c0dee7a469ad4a94d5b8204f30f72"},
3445
+ {file = "pykx-2.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:7532300b035e506c17ada9469cf2911532e8b3d9fc41726cdba5179b910ab8f6"},
3446
+ {file = "pykx-2.5.3-cp39-cp39-macosx_10_10_arm64.macosx_11_0_arm64.macosx_12_0_arm64.macosx_13_0_arm64.whl", hash = "sha256:69180dfe907a0cd655595254f9d253f0d6e5dd81774c8033a21a2fdea32a75a2"},
3447
+ {file = "pykx-2.5.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:156c61b80f08bb6af212b621c71c9e2b8d4a780f5fbff4dfdf6af015a05351e5"},
3448
+ {file = "pykx-2.5.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38e8f89ead9c320feb668fda654373a545f170f0a2b27f6e3603a459c2dbd815"},
3449
+ {file = "pykx-2.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:3b84cb1d7c60b41dca3658128923a25a2cdd8b4241b7f0b2f54ab2709530619f"},
3450
+ ]
3451
+
3452
+ [package.dependencies]
3453
+ numpy = [
3454
+ {version = ">=1.22,<2.0", markers = "python_version == \"3.10\""},
3455
+ {version = ">=1.23,<2.0", markers = "python_version == \"3.11\""},
3456
+ {version = ">=1.26,<2.0", markers = "python_version == \"3.12\""},
3457
+ ]
3458
+ pandas = ">=1.2,<2.2.0"
3459
+ pytz = ">=2022.1"
3460
+ toml = ">=0.10.2,<0.11.0"
3461
+
3462
+ [package.extras]
3463
+ all = ["Cython (>=3.0.0,<3.1.0)", "ast2json (>=0.3,<1.0)", "black (==22.1.0)", "coverage[toml] (==6.3.2)", "dill (>=0.2.0)", "find-libpython (>=0.2,<1.0)", "flake8 (==4.0.1)", "flake8-bugbear (==22.1.11)", "flake8-colors (==0.1.9)", "flake8-docstrings (==1.6.0)", "flake8-import-order (==0.18.1)", "griffe (==0.14.0)", "jupyter (==1.0.0)", "markdown (==3.3.7)", "markdown-grid-tables (==0.0.1)", "mkdocs (>=1.5.0,<1.6.0)", "mkdocs-autorefs (==0.4.1)", "mkdocs-click (==0.5.0)", "mkdocs-exclude (==1.0.2)", "mkdocs-exclude-search (==0.6.6)", "mkdocs-jupyter (>=0.24,<1.0)", "mkdocs-material (>=9.4.5,<9.5.0)", "mkdocs-render-swagger-plugin (==0.0.3)", "mkdocs-spellcheck (==0.2.0)", "mkdocstrings[python] (==0.18.0)", "pep8-naming (==0.12.1)", "plotly (==5.10.0)", "psutil (==5.9.5)", "pyarrow (>=3.0.0)", "pygments (>=2.12,<3.0)", "pymdown-extensions (>=9.3)", "pyproject-flake8 (==0.0.1a2)", "pytest (==7.1.2)", "pytest-asyncio (==0.18.3)", "pytest-benchmark (==3.4.1)", "pytest-cov (==3.0.0)", "pytest-monitor (==1.6.5)", "pytest-order (==1.1.0)", "pytest-randomly (==3.11.0)", "pytest-timeout (>=2.0.0)", "pytest-xdist (==2.5.0)", "streamlit (>=1.28,<2.0)"]
3464
+ beta = ["dill (>=0.2.0)"]
3465
+ dashboards = ["ast2json (>=0.3,<1.0)"]
3466
+ debug = ["find-libpython (>=0.2,<1.0)"]
3467
+ doc = ["black (==22.1.0)", "griffe (==0.14.0)", "jupyter (==1.0.0)", "markdown (==3.3.7)", "markdown-grid-tables (==0.0.1)", "mkdocs (>=1.5.0,<1.6.0)", "mkdocs-autorefs (==0.4.1)", "mkdocs-click (==0.5.0)", "mkdocs-exclude (==1.0.2)", "mkdocs-exclude-search (==0.6.6)", "mkdocs-jupyter (>=0.24,<1.0)", "mkdocs-material (>=9.4.5,<9.5.0)", "mkdocs-render-swagger-plugin (==0.0.3)", "mkdocs-spellcheck (==0.2.0)", "mkdocstrings[python] (==0.18.0)", "pygments (>=2.12,<3.0)", "pymdown-extensions (>=9.3)"]
3468
+ lint = ["flake8 (==4.0.1)", "flake8-bugbear (==22.1.11)", "flake8-colors (==0.1.9)", "flake8-docstrings (==1.6.0)", "flake8-import-order (==0.18.1)", "pep8-naming (==0.12.1)", "pyproject-flake8 (==0.0.1a2)"]
3469
+ pyarrow = ["pyarrow (>=3.0.0)"]
3470
+ streamlit = ["streamlit (>=1.28,<2.0)"]
3471
+ test = ["Cython (>=3.0.0,<3.1.0)", "coverage[toml] (==6.3.2)", "plotly (==5.10.0)", "psutil (==5.9.5)", "pytest (==7.1.2)", "pytest-asyncio (==0.18.3)", "pytest-benchmark (==3.4.1)", "pytest-cov (==3.0.0)", "pytest-monitor (==1.6.5)", "pytest-order (==1.1.0)", "pytest-randomly (==3.11.0)", "pytest-timeout (>=2.0.0)", "pytest-xdist (==2.5.0)"]
3472
+
3473
  [[package]]
3474
  name = "pyparsing"
3475
  version = "3.1.4"
 
4539
  docs = ["setuptools-rust", "sphinx", "sphinx-rtd-theme"]
4540
  testing = ["black (==22.3)", "datasets", "numpy", "pytest", "requests", "ruff"]
4541
 
4542
+ [[package]]
4543
+ name = "toml"
4544
+ version = "0.10.2"
4545
+ description = "Python Library for Tom's Obvious, Minimal Language"
4546
+ optional = false
4547
+ python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
4548
+ files = [
4549
+ {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"},
4550
+ {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
4551
+ ]
4552
+
4553
  [[package]]
4554
  name = "tomli"
4555
  version = "2.0.1"
 
5370
  [metadata]
5371
  lock-version = "2.0"
5372
  python-versions = ">=3.10,<3.13"
5373
+ content-hash = "5b9906edba328df0ad2bee1ebaeae3dd1bf5f8a9c0b52a6ab026e9fbe87105cb"
pyproject.toml CHANGED
@@ -7,27 +7,30 @@ readme = "README.md"
7
 
8
  [tool.poetry.dependencies]
9
  python = ">=3.10,<3.13"
10
- llama-index-core = ">=0.11.1"
11
  llama-index-readers-file = ">=0.2.0"
12
  llama-index-vector-stores-faiss = ">=0.2.1"
13
  llama-index-utils-workflow = ">=0.2.0"
14
  llama-index-embeddings-huggingface = ">=0.3.1"
15
  llama-index-llms-openai = ">=0.2.0"
16
- beautifulsoup4 = "^4.12.3"
17
- lxml = "^5.3.0"
18
- langchain = ">=0.2.14"
19
- faiss-cpu = "^1.8.0.post1"
20
- sentence-transformers = "^3.0.1"
21
- tqdm = "^4.66.5"
22
- transformers = "^4.44.2"
23
- torch = "^2.4.0"
 
 
 
24
  nltk = ">=3.9.1"
25
- dspy-ai = "^2.4.13"
26
- python-dotenv = "^1.0.1"
27
- accelerate = "^0.33.0"
28
- gradio = "^4.42.0"
29
- pydantic = "^2.8.2"
30
- llama-index-agent-openai = "^0.3.0"
31
 
32
 
33
 
 
7
 
8
  [tool.poetry.dependencies]
9
  python = ">=3.10,<3.13"
10
+ llama-index-core = ">=0.11.2"
11
  llama-index-readers-file = ">=0.2.0"
12
  llama-index-vector-stores-faiss = ">=0.2.1"
13
  llama-index-utils-workflow = ">=0.2.0"
14
  llama-index-embeddings-huggingface = ">=0.3.1"
15
  llama-index-llms-openai = ">=0.2.0"
16
+ llama-index-agent-openai = ">=0.3.0"
17
+ llama-index-vector-stores-kdbai = ">=0.3.1"
18
+ llama-index-embeddings-openai = ">=0.2.3"
19
+ beautifulsoup4 = ">=4.12.3"
20
+ lxml = ">=5.3.0"
21
+ langchain = ">=0.2.15"
22
+ faiss-cpu = ">=1.8.0.post1"
23
+ sentence-transformers = ">=3.0.1"
24
+ tqdm = ">=4.66.5"
25
+ transformers = ">=4.44.2"
26
+ torch = ">=2.4.0"
27
  nltk = ">=3.9.1"
28
+ dspy-ai = ">=2.4.13"
29
+ python-dotenv = ">=1.0.1"
30
+ accelerate = ">=0.33.0"
31
+ gradio = ">=4.42.0"
32
+ pydantic = ">=2.8.2"
33
+ kdbai-client = ">=1.2.4"
34
 
35
 
36
 
requirements.txt CHANGED
@@ -54,18 +54,21 @@ joblib==1.4.2 ; python_version >= "3.10" and python_version < "3.13"
54
  jsonpatch==1.33 ; python_version >= "3.10" and python_version < "3.13"
55
  jsonpickle==3.2.2 ; python_version >= "3.10" and python_version < "3.13"
56
  jsonpointer==3.0.0 ; python_version >= "3.10" and python_version < "3.13"
 
57
  kiwisolver==1.4.5 ; python_version >= "3.10" and python_version < "3.13"
58
- langchain-core==0.2.35 ; python_version >= "3.10" and python_version < "3.13"
59
  langchain-text-splitters==0.2.2 ; python_version >= "3.10" and python_version < "3.13"
60
- langchain==0.2.14 ; python_version >= "3.10" and python_version < "3.13"
61
- langsmith==0.1.105 ; python_version >= "3.10" and python_version < "3.13"
62
  llama-index-agent-openai==0.3.0 ; python_version >= "3.10" and python_version < "3.13"
63
- llama-index-core==0.11.1 ; python_version >= "3.10" and python_version < "3.13"
64
  llama-index-embeddings-huggingface==0.3.1 ; python_version >= "3.10" and python_version < "3.13"
 
65
  llama-index-llms-openai==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
66
  llama-index-readers-file==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
67
  llama-index-utils-workflow==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
68
  llama-index-vector-stores-faiss==0.2.1 ; python_version >= "3.10" and python_version < "3.13"
 
69
  lxml==5.3.0 ; python_version >= "3.10" and python_version < "3.13"
70
  mako==1.3.5 ; python_version >= "3.10" and python_version < "3.13"
71
  markdown-it-py==3.0.0 ; python_version >= "3.10" and python_version < "3.13" and sys_platform != "emscripten"
@@ -99,7 +102,7 @@ openai==1.42.0 ; python_version >= "3.10" and python_version < "3.13"
99
  optuna==3.6.1 ; python_version >= "3.10" and python_version < "3.13"
100
  orjson==3.10.7 ; python_version >= "3.10" and python_version < "3.13"
101
  packaging==24.1 ; python_version >= "3.10" and python_version < "3.13"
102
- pandas==2.2.2 ; python_version >= "3.10" and python_version < "3.13"
103
  parso==0.8.4 ; python_version >= "3.10" and python_version < "3.13"
104
  pexpect==4.9.0 ; python_version >= "3.10" and python_version < "3.13" and (sys_platform != "win32" and sys_platform != "emscripten")
105
  pillow==10.4.0 ; python_version >= "3.10" and python_version < "3.13"
@@ -112,6 +115,7 @@ pydantic-core==2.20.1 ; python_version >= "3.10" and python_version < "3.13"
112
  pydantic==2.8.2 ; python_version >= "3.10" and python_version < "3.13"
113
  pydub==0.25.1 ; python_version >= "3.10" and python_version < "3.13"
114
  pygments==2.18.0 ; python_version >= "3.10" and python_version < "3.13"
 
115
  pyparsing==3.1.4 ; python_version >= "3.10" and python_version < "3.13"
116
  pypdf==4.3.1 ; python_version >= "3.10" and python_version < "3.13"
117
  python-dateutil==2.9.0.post0 ; python_version >= "3.10" and python_version < "3.13"
@@ -144,6 +148,7 @@ tenacity==8.5.0 ; python_version >= "3.10" and python_version < "3.13"
144
  threadpoolctl==3.5.0 ; python_version >= "3.10" and python_version < "3.13"
145
  tiktoken==0.7.0 ; python_version >= "3.10" and python_version < "3.13"
146
  tokenizers==0.19.1 ; python_version >= "3.10" and python_version < "3.13"
 
147
  tomlkit==0.12.0 ; python_version >= "3.10" and python_version < "3.13"
148
  torch==2.4.0 ; python_version >= "3.10" and python_version < "3.13"
149
  tqdm==4.66.5 ; python_version >= "3.10" and python_version < "3.13"
 
54
  jsonpatch==1.33 ; python_version >= "3.10" and python_version < "3.13"
55
  jsonpickle==3.2.2 ; python_version >= "3.10" and python_version < "3.13"
56
  jsonpointer==3.0.0 ; python_version >= "3.10" and python_version < "3.13"
57
+ kdbai-client==1.2.4 ; python_version >= "3.10" and python_version < "3.13"
58
  kiwisolver==1.4.5 ; python_version >= "3.10" and python_version < "3.13"
59
+ langchain-core==0.2.36 ; python_version >= "3.10" and python_version < "3.13"
60
  langchain-text-splitters==0.2.2 ; python_version >= "3.10" and python_version < "3.13"
61
+ langchain==0.2.15 ; python_version >= "3.10" and python_version < "3.13"
62
+ langsmith==0.1.106 ; python_version >= "3.10" and python_version < "3.13"
63
  llama-index-agent-openai==0.3.0 ; python_version >= "3.10" and python_version < "3.13"
64
+ llama-index-core==0.11.2 ; python_version >= "3.10" and python_version < "3.13"
65
  llama-index-embeddings-huggingface==0.3.1 ; python_version >= "3.10" and python_version < "3.13"
66
+ llama-index-embeddings-openai==0.2.3 ; python_version >= "3.10" and python_version < "3.13"
67
  llama-index-llms-openai==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
68
  llama-index-readers-file==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
69
  llama-index-utils-workflow==0.2.0 ; python_version >= "3.10" and python_version < "3.13"
70
  llama-index-vector-stores-faiss==0.2.1 ; python_version >= "3.10" and python_version < "3.13"
71
+ llama-index-vector-stores-kdbai==0.3.1 ; python_version >= "3.10" and python_version < "3.13"
72
  lxml==5.3.0 ; python_version >= "3.10" and python_version < "3.13"
73
  mako==1.3.5 ; python_version >= "3.10" and python_version < "3.13"
74
  markdown-it-py==3.0.0 ; python_version >= "3.10" and python_version < "3.13" and sys_platform != "emscripten"
 
102
  optuna==3.6.1 ; python_version >= "3.10" and python_version < "3.13"
103
  orjson==3.10.7 ; python_version >= "3.10" and python_version < "3.13"
104
  packaging==24.1 ; python_version >= "3.10" and python_version < "3.13"
105
+ pandas==2.1.4 ; python_version >= "3.10" and python_version < "3.13"
106
  parso==0.8.4 ; python_version >= "3.10" and python_version < "3.13"
107
  pexpect==4.9.0 ; python_version >= "3.10" and python_version < "3.13" and (sys_platform != "win32" and sys_platform != "emscripten")
108
  pillow==10.4.0 ; python_version >= "3.10" and python_version < "3.13"
 
115
  pydantic==2.8.2 ; python_version >= "3.10" and python_version < "3.13"
116
  pydub==0.25.1 ; python_version >= "3.10" and python_version < "3.13"
117
  pygments==2.18.0 ; python_version >= "3.10" and python_version < "3.13"
118
+ pykx==2.5.3 ; python_version >= "3.10" and python_version < "3.13"
119
  pyparsing==3.1.4 ; python_version >= "3.10" and python_version < "3.13"
120
  pypdf==4.3.1 ; python_version >= "3.10" and python_version < "3.13"
121
  python-dateutil==2.9.0.post0 ; python_version >= "3.10" and python_version < "3.13"
 
148
  threadpoolctl==3.5.0 ; python_version >= "3.10" and python_version < "3.13"
149
  tiktoken==0.7.0 ; python_version >= "3.10" and python_version < "3.13"
150
  tokenizers==0.19.1 ; python_version >= "3.10" and python_version < "3.13"
151
+ toml==0.10.2 ; python_version >= "3.10" and python_version < "3.13"
152
  tomlkit==0.12.0 ; python_version >= "3.10" and python_version < "3.13"
153
  torch==2.4.0 ; python_version >= "3.10" and python_version < "3.13"
154
  tqdm==4.66.5 ; python_version >= "3.10" and python_version < "3.13"