vanna 0.7.4__tar.gz → 0.7.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. {vanna-0.7.4 → vanna-0.7.5}/PKG-INFO +4 -1
  2. {vanna-0.7.4 → vanna-0.7.5}/pyproject.toml +3 -2
  3. vanna-0.7.5/src/vanna/xinference/__init__.py +1 -0
  4. vanna-0.7.5/src/vanna/xinference/xinference.py +53 -0
  5. {vanna-0.7.4 → vanna-0.7.5}/README.md +0 -0
  6. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/ZhipuAI/ZhipuAI_Chat.py +0 -0
  7. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/ZhipuAI/ZhipuAI_embeddings.py +0 -0
  8. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/ZhipuAI/__init__.py +0 -0
  9. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/__init__.py +0 -0
  10. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/advanced/__init__.py +0 -0
  11. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/anthropic/__init__.py +0 -0
  12. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/anthropic/anthropic_chat.py +0 -0
  13. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/azuresearch/__init__.py +0 -0
  14. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/azuresearch/azuresearch_vector.py +0 -0
  15. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/base/__init__.py +0 -0
  16. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/base/base.py +0 -0
  17. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/bedrock/__init__.py +0 -0
  18. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/bedrock/bedrock_converse.py +0 -0
  19. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/chromadb/__init__.py +0 -0
  20. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/chromadb/chromadb_vector.py +0 -0
  21. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/exceptions/__init__.py +0 -0
  22. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/faiss/__init__.py +0 -0
  23. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/faiss/faiss.py +0 -0
  24. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/flask/__init__.py +0 -0
  25. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/flask/assets.py +0 -0
  26. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/flask/auth.py +0 -0
  27. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/google/__init__.py +0 -0
  28. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/google/bigquery_vector.py +0 -0
  29. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/google/gemini_chat.py +0 -0
  30. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/hf/__init__.py +0 -0
  31. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/hf/hf.py +0 -0
  32. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/local.py +0 -0
  33. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/marqo/__init__.py +0 -0
  34. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/marqo/marqo.py +0 -0
  35. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/milvus/__init__.py +0 -0
  36. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/milvus/milvus_vector.py +0 -0
  37. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mistral/__init__.py +0 -0
  38. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mistral/mistral.py +0 -0
  39. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mock/__init__.py +0 -0
  40. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mock/embedding.py +0 -0
  41. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mock/llm.py +0 -0
  42. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/mock/vectordb.py +0 -0
  43. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/ollama/__init__.py +0 -0
  44. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/ollama/ollama.py +0 -0
  45. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/openai/__init__.py +0 -0
  46. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/openai/openai_chat.py +0 -0
  47. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/openai/openai_embeddings.py +0 -0
  48. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/opensearch/__init__.py +0 -0
  49. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/opensearch/opensearch_vector.py +0 -0
  50. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/pgvector/__init__.py +0 -0
  51. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/pgvector/pgvector.py +0 -0
  52. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/pinecone/__init__.py +0 -0
  53. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/pinecone/pinecone_vector.py +0 -0
  54. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qdrant/__init__.py +0 -0
  55. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qdrant/qdrant.py +0 -0
  56. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianfan/Qianfan_Chat.py +0 -0
  57. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianfan/Qianfan_embeddings.py +0 -0
  58. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianfan/__init__.py +0 -0
  59. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianwen/QianwenAI_chat.py +0 -0
  60. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianwen/QianwenAI_embeddings.py +0 -0
  61. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/qianwen/__init__.py +0 -0
  62. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/remote.py +0 -0
  63. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/types/__init__.py +0 -0
  64. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/utils.py +0 -0
  65. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/vannadb/__init__.py +0 -0
  66. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/vannadb/vannadb_vector.py +0 -0
  67. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/vllm/__init__.py +0 -0
  68. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/vllm/vllm.py +0 -0
  69. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/weaviate/__init__.py +0 -0
  70. {vanna-0.7.4 → vanna-0.7.5}/src/vanna/weaviate/weaviate_vector.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vanna
3
- Version: 0.7.4
3
+ Version: 0.7.5
4
4
  Summary: Generate SQL queries from natural language
5
5
  Author-email: Zain Hoda <zain@vanna.ai>
6
6
  Requires-Python: >=3.9
@@ -52,6 +52,7 @@ Requires-Dist: boto3 ; extra == "all"
52
52
  Requires-Dist: botocore ; extra == "all"
53
53
  Requires-Dist: langchain_core ; extra == "all"
54
54
  Requires-Dist: langchain_postgres ; extra == "all"
55
+ Requires-Dist: xinference-client ; extra == "all"
55
56
  Requires-Dist: anthropic ; extra == "anthropic"
56
57
  Requires-Dist: azure-search-documents ; extra == "azuresearch"
57
58
  Requires-Dist: azure-identity ; extra == "azuresearch"
@@ -90,6 +91,7 @@ Requires-Dist: snowflake-connector-python ; extra == "snowflake"
90
91
  Requires-Dist: tox ; extra == "test"
91
92
  Requires-Dist: vllm ; extra == "vllm"
92
93
  Requires-Dist: weaviate-client ; extra == "weaviate"
94
+ Requires-Dist: xinference-client ; extra == "xinference-client"
93
95
  Requires-Dist: zhipuai ; extra == "zhipuai"
94
96
  Project-URL: Bug Tracker, https://github.com/vanna-ai/vanna/issues
95
97
  Project-URL: Homepage, https://github.com/vanna-ai/vanna
@@ -122,6 +124,7 @@ Provides-Extra: snowflake
122
124
  Provides-Extra: test
123
125
  Provides-Extra: vllm
124
126
  Provides-Extra: weaviate
127
+ Provides-Extra: xinference-client
125
128
  Provides-Extra: zhipuai
126
129
 
127
130
 
@@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
4
4
 
5
5
  [project]
6
6
  name = "vanna"
7
- version = "0.7.4"
7
+ version = "0.7.5"
8
8
  authors = [
9
9
  { name="Zain Hoda", email="zain@vanna.ai" },
10
10
  ]
@@ -33,7 +33,7 @@ bigquery = ["google-cloud-bigquery"]
33
33
  snowflake = ["snowflake-connector-python"]
34
34
  duckdb = ["duckdb"]
35
35
  google = ["google-generativeai", "google-cloud-aiplatform"]
36
- all = ["psycopg2-binary", "db-dtypes", "PyMySQL", "google-cloud-bigquery", "snowflake-connector-python", "duckdb", "openai", "qianfan", "mistralai>=1.0.0", "chromadb", "anthropic", "zhipuai", "marqo", "google-generativeai", "google-cloud-aiplatform", "qdrant-client", "fastembed", "ollama", "httpx", "opensearch-py", "opensearch-dsl", "transformers", "pinecone-client", "pymilvus[model]","weaviate-client", "azure-search-documents", "azure-identity", "azure-common", "faiss-cpu", "boto", "boto3", "botocore", "langchain_core", "langchain_postgres"]
36
+ all = ["psycopg2-binary", "db-dtypes", "PyMySQL", "google-cloud-bigquery", "snowflake-connector-python", "duckdb", "openai", "qianfan", "mistralai>=1.0.0", "chromadb", "anthropic", "zhipuai", "marqo", "google-generativeai", "google-cloud-aiplatform", "qdrant-client", "fastembed", "ollama", "httpx", "opensearch-py", "opensearch-dsl", "transformers", "pinecone-client", "pymilvus[model]","weaviate-client", "azure-search-documents", "azure-identity", "azure-common", "faiss-cpu", "boto", "boto3", "botocore", "langchain_core", "langchain_postgres", "xinference-client"]
37
37
  test = ["tox"]
38
38
  chromadb = ["chromadb"]
39
39
  openai = ["openai"]
@@ -56,3 +56,4 @@ azuresearch = ["azure-search-documents", "azure-identity", "azure-common", "fast
56
56
  pgvector = ["langchain-postgres>=0.0.12"]
57
57
  faiss-cpu = ["faiss-cpu"]
58
58
  faiss-gpu = ["faiss-gpu"]
59
+ xinference-client = ["xinference-client"]
@@ -0,0 +1 @@
1
+ from .xinference import Xinference
@@ -0,0 +1,53 @@
1
+ from xinference_client.client.restful.restful_client import (
2
+ Client,
3
+ RESTfulChatModelHandle,
4
+ )
5
+
6
+ from ..base import VannaBase
7
+
8
+
9
+ class Xinference(VannaBase):
10
+ def __init__(self, config=None):
11
+ VannaBase.__init__(self, config=config)
12
+
13
+ if not config or "base_url" not in config:
14
+ raise ValueError("config must contain at least Xinference base_url")
15
+
16
+ base_url = config["base_url"]
17
+ api_key = config.get("api_key", "not empty")
18
+ self.xinference_client = Client(base_url=base_url, api_key=api_key)
19
+
20
+ def system_message(self, message: str) -> any:
21
+ return {"role": "system", "content": message}
22
+
23
+ def user_message(self, message: str) -> any:
24
+ return {"role": "user", "content": message}
25
+
26
+ def assistant_message(self, message: str) -> any:
27
+ return {"role": "assistant", "content": message}
28
+
29
+ def submit_prompt(self, prompt, **kwargs) -> str:
30
+ if prompt is None:
31
+ raise Exception("Prompt is None")
32
+
33
+ if len(prompt) == 0:
34
+ raise Exception("Prompt is empty")
35
+
36
+ num_tokens = 0
37
+ for message in prompt:
38
+ num_tokens += len(message["content"]) / 4
39
+
40
+ model_uid = kwargs.get("model_uid") or self.config.get("model_uid", None)
41
+ if model_uid is None:
42
+ raise ValueError("model_uid is required")
43
+
44
+ xinference_model = self.xinference_client.get_model(model_uid)
45
+ if isinstance(xinference_model, RESTfulChatModelHandle):
46
+ print(
47
+ f"Using model_uid {model_uid} for {num_tokens} tokens (approx)"
48
+ )
49
+
50
+ response = xinference_model.chat(prompt)
51
+ return response["choices"][0]["message"]["content"]
52
+ else:
53
+ raise NotImplementedError(f"Xinference model handle type {type(xinference_model)} is not supported, required RESTfulChatModelHandle")
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes