sunholo 0.61.11__tar.gz → 0.62.0__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.
- {sunholo-0.61.11 → sunholo-0.62.0}/PKG-INFO +2 -2
- {sunholo-0.61.11 → sunholo-0.62.0}/setup.py +1 -1
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/llamaindex/import_files.py +40 -20
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/PKG-INFO +2 -2
- {sunholo-0.61.11 → sunholo-0.62.0}/LICENSE.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/MANIFEST.in +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/README.md +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/setup.cfg +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/chat_history.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/dispatch_to_qa.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/fastapi/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/fastapi/base.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/fastapi/qna_routes.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/flask/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/flask/base.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/flask/qna_routes.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/langserve.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/pubsub.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/route.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/agents/special_commands.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/archive/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/archive/archive.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/auth/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/auth/run.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/bots/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/bots/discord.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/bots/github_webhook.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/bots/webapp.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/doc_handling.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/images.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/loaders.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/message_data.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/pdfs.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/publish.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/chunker/splitter.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/chat_vac.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/cli.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/cli_init.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/configs.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/deploy.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/embedder.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/merge_texts.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/run_proxy.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/cli/sun_rich.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/components/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/components/llm.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/components/prompt.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/components/retriever.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/components/vectorstore.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/alloydb.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/database.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/lancedb.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/create_function.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/create_function_time.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/create_table.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/return_sources.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/sql/sb/setup.sql +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/static_dbs.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/database/uuid.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/embedder/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/embedder/embed_chunk.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/gcs/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/gcs/add_file.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/gcs/download_url.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/gcs/metadata.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/langfuse/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/langfuse/callback.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/langfuse/prompts.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/llamaindex/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/llamaindex/generate.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/logging.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/lookup/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/lookup/model_lookup.yaml +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/patches/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/patches/langchain/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/patches/langchain/lancedb.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/patches/langchain/vertexai.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/pubsub/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/pubsub/process_pubsub.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/pubsub/pubsub_manager.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/qna/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/qna/parsers.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/qna/retry.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/streaming/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/streaming/content_buffer.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/streaming/langserve.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/streaming/streaming.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/summarise/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/summarise/summarise.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/big_context.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/config.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/config_schema.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/gcp.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/parsers.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/utils/user_ids.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/vertex/__init__.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo/vertex/init_vertex.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/SOURCES.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/dependency_links.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/entry_points.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/requires.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/sunholo.egg-info/top_level.txt +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/tests/test_chat_history.py +0 -0
- {sunholo-0.61.11 → sunholo-0.62.0}/tests/test_config.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sunholo
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.62.0
|
|
4
4
|
Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
|
|
5
5
|
Home-page: https://github.com/sunholo-data/sunholo-py
|
|
6
|
-
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.
|
|
6
|
+
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.62.0.tar.gz
|
|
7
7
|
Author: Holosun ApS
|
|
8
8
|
Author-email: multivac@sunholo.com
|
|
9
9
|
License: Apache License, Version 2.0
|
|
@@ -6,10 +6,11 @@ except ImportError:
|
|
|
6
6
|
from ..logging import log
|
|
7
7
|
from ..utils.config import load_config_key
|
|
8
8
|
from ..vertex import init_vertex
|
|
9
|
+
from ..components import load_memories
|
|
9
10
|
|
|
10
11
|
# Create a RAG Corpus, Import Files
|
|
11
12
|
|
|
12
|
-
def get_corpus(
|
|
13
|
+
def get_corpus(vector_name):
|
|
13
14
|
"""
|
|
14
15
|
Retrieves a LlamaIndex corpus from Vertex AI based on the provided Google Cloud configuration.
|
|
15
16
|
|
|
@@ -17,13 +18,10 @@ def get_corpus(gcp_config):
|
|
|
17
18
|
to fetch the corresponding corpus. If the corpus cannot be retrieved, it raises an error.
|
|
18
19
|
|
|
19
20
|
Parameters:
|
|
20
|
-
-
|
|
21
|
-
- project_id (str): Google Cloud project identifier.
|
|
22
|
-
- location (str): Google Cloud location.
|
|
23
|
-
- rag_id (str): Identifier for the RAG (Retrieval-Augmented Generation) corpus.
|
|
21
|
+
- vector_name: The name of the of VAC
|
|
24
22
|
|
|
25
23
|
Returns:
|
|
26
|
-
-
|
|
24
|
+
- List of corpus objects fetched from Vertex AI.
|
|
27
25
|
|
|
28
26
|
Raises:
|
|
29
27
|
- ValueError: If any of the required configurations (project_id, location, or rag_id) are missing,
|
|
@@ -31,32 +29,54 @@ def get_corpus(gcp_config):
|
|
|
31
29
|
|
|
32
30
|
Example:
|
|
33
31
|
```python
|
|
34
|
-
# Example configuration dictionary
|
|
35
|
-
gcp_config = {
|
|
36
|
-
'project_id': 'your-project-id',
|
|
37
|
-
'location': 'your-location',
|
|
38
|
-
'rag_id': 'your-rag-id'
|
|
39
|
-
}
|
|
40
32
|
|
|
41
33
|
# Fetch the corpus
|
|
42
34
|
try:
|
|
43
|
-
corpus = get_corpus(
|
|
35
|
+
corpus = get_corpus("edmonbrain")
|
|
44
36
|
print("Corpus fetched successfully:", corpus)
|
|
45
37
|
except ValueError as e:
|
|
46
38
|
print("Error fetching corpus:", str(e))
|
|
47
39
|
```
|
|
48
40
|
"""
|
|
41
|
+
gcp_config = load_config_key("gcp_config", vector_name=vector_name, type="vacConfig")
|
|
42
|
+
|
|
49
43
|
if not rag:
|
|
50
44
|
raise ValueError("Need to install vertexai module via `pip install sunholo[gcp]`")
|
|
51
45
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
46
|
+
global_project_id = gcp_config.get('project_id')
|
|
47
|
+
global_location = gcp_config.get('location')
|
|
48
|
+
global_rag_id = gcp_config.get('rag_id')
|
|
49
|
+
|
|
50
|
+
memories = load_memories(vector_name)
|
|
51
|
+
corpii = []
|
|
52
|
+
for memory in memories:
|
|
53
|
+
for key, value in memory.items(): # Now iterate over the dictionary
|
|
54
|
+
log.info(f"Found memory {key}")
|
|
55
|
+
vectorstore = value.get('vectorstore')
|
|
56
|
+
if vectorstore == "llamaindex":
|
|
57
|
+
log.info(f"Found vectorstore {vectorstore}")
|
|
58
|
+
rag_id = value.get('rag_id')
|
|
59
|
+
project_id = gcp_config.get('project_id')
|
|
60
|
+
location = gcp_config.get('location')
|
|
61
|
+
corpus = fetch_corpus(
|
|
62
|
+
project_id=project_id or global_project_id,
|
|
63
|
+
location=location or global_location,
|
|
64
|
+
rag_id=rag_id or global_rag_id
|
|
65
|
+
)
|
|
66
|
+
corpii.append(corpus)
|
|
67
|
+
|
|
68
|
+
if not project_id or not global_project_id:
|
|
69
|
+
raise ValueError("Need config.gcp.project_id or config.memory.llamaindex.project_id to configure llamaindex on VertexAI")
|
|
70
|
+
if not rag_id or not global_project_id:
|
|
71
|
+
raise ValueError("Need config.gcp.rag_id or config.memory.llamaindex.rag_id to configure llamaindex on VertexAI. Create via `rag.create_corpus(display_name=vector_name, description=description)`")
|
|
72
|
+
|
|
73
|
+
if not corpii:
|
|
74
|
+
raise ValueError("No llamaindex Vertex corpus configurations could be found")
|
|
75
|
+
|
|
76
|
+
return corpii
|
|
77
|
+
|
|
59
78
|
|
|
79
|
+
def fetch_corpus(project_id, location, rag_id):
|
|
60
80
|
corpus_name = f"projects/{project_id}/locations/{location}/ragCorpora/{rag_id}"
|
|
61
81
|
|
|
62
82
|
try:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sunholo
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.62.0
|
|
4
4
|
Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
|
|
5
5
|
Home-page: https://github.com/sunholo-data/sunholo-py
|
|
6
|
-
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.
|
|
6
|
+
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.62.0.tar.gz
|
|
7
7
|
Author: Holosun ApS
|
|
8
8
|
Author-email: multivac@sunholo.com
|
|
9
9
|
License: Apache License, Version 2.0
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|