sunholo 0.101.7__tar.gz → 0.101.8__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.101.7 → sunholo-0.101.8}/PKG-INFO +2 -2
- {sunholo-0.101.7 → sunholo-0.101.8}/setup.py +1 -1
- sunholo-0.101.8/sunholo/genai/images.py +48 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/PKG-INFO +2 -2
- sunholo-0.101.7/sunholo/genai/images.py +0 -38
- {sunholo-0.101.7 → sunholo-0.101.8}/LICENSE.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/MANIFEST.in +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/README.md +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/setup.cfg +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/chat_history.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/dispatch_to_qa.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/fastapi/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/fastapi/base.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/fastapi/qna_routes.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/flask/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/flask/base.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/flask/qna_routes.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/flask/vac_routes.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/langserve.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/pubsub.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/route.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/special_commands.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/agents/swagger.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/archive/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/archive/archive.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/auth/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/auth/gcloud.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/auth/refresh.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/auth/run.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/azure/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/azure/auth.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/azure/blobs.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/azure/event_grid.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/bots/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/bots/discord.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/bots/github_webhook.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/bots/webapp.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/azure.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/doc_handling.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/encode_metadata.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/images.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/loaders.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/message_data.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/pdfs.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/process_chunker_data.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/publish.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/pubsub.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/chunker/splitter.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/chat_vac.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/cli.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/cli_init.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/configs.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/deploy.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/embedder.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/merge_texts.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/run_proxy.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/sun_rich.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/swagger.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/cli/vertex.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/components/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/components/llm.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/components/retriever.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/components/vectorstore.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/custom_logging.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/alloydb.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/alloydb_client.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/database.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/lancedb.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/create_function.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/create_function_time.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/create_table.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/return_sources.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/sql/sb/setup.sql +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/static_dbs.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/database/uuid.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/discovery_engine/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/discovery_engine/chunker_handler.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/discovery_engine/create_new.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/discovery_engine/discovery_engine_client.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/discovery_engine/get_ai_search_chunks.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/embedder/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/embedder/embed_chunk.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/excel/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/excel/plugin.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/add_file.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/download_folder.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/download_url.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/extract_and_sign.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/gcs/metadata.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/genai/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/genai/init.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/genai/process_funcs_cls.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/genai/safety.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/invoke/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/invoke/async_class.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/invoke/direct_vac_func.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/invoke/invoke_vac_utils.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/langfuse/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/langfuse/callback.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/langfuse/evals.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/langfuse/prompts.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/llamaindex/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/llamaindex/get_files.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/llamaindex/import_files.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/llamaindex/llamaindex_class.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/llamaindex/user_history.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/lookup/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/lookup/model_lookup.yaml +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/patches/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/patches/langchain/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/patches/langchain/lancedb.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/patches/langchain/vertexai.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/pubsub/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/pubsub/process_pubsub.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/pubsub/pubsub_manager.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/qna/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/qna/parsers.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/qna/retry.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/streaming/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/streaming/content_buffer.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/streaming/langserve.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/streaming/stream_lookup.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/streaming/streaming.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/summarise/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/summarise/summarise.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/terraform/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/terraform/tfvars_editor.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/tools/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/tools/web_browser.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/api_key.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/big_context.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/config.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/config_class.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/config_schema.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/gcp.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/gcp_project.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/mime.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/parsers.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/timedelta.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/user_ids.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/utils/version.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/__init__.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/extensions_call.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/extensions_class.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/genai_functions.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/init.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/memory_tools.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/safety.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo/vertex/type_dict_to_json.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/SOURCES.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/dependency_links.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/entry_points.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/requires.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/sunholo.egg-info/top_level.txt +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/tests/test_async.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/tests/test_chat_history.py +0 -0
- {sunholo-0.101.7 → sunholo-0.101.8}/tests/test_config.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sunholo
|
|
3
|
-
Version: 0.101.
|
|
3
|
+
Version: 0.101.8
|
|
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.101.
|
|
6
|
+
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.101.8.tar.gz
|
|
7
7
|
Author: Holosun ApS
|
|
8
8
|
Author-email: multivac@sunholo.com
|
|
9
9
|
License: Apache License, Version 2.0
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import re
|
|
2
|
+
from ..utils.mime import guess_mime_type
|
|
3
|
+
from ..gcs import get_bytes_from_gcs
|
|
4
|
+
from ..custom_logging import log
|
|
5
|
+
import os
|
|
6
|
+
import tempfile
|
|
7
|
+
try:
|
|
8
|
+
import google.generativeai as genai
|
|
9
|
+
except ImportError:
|
|
10
|
+
genai = None
|
|
11
|
+
|
|
12
|
+
def extract_gs_images_and_genai_upload(content: str):
|
|
13
|
+
# Regular expression to find gs:// URLs
|
|
14
|
+
pattern = r'gs://[^ ]+\.(?:png|jpg|jpeg|pdf)'
|
|
15
|
+
|
|
16
|
+
gs_matches = re.findall(pattern, content)
|
|
17
|
+
unique_gs_matches = set(gs_matches)
|
|
18
|
+
output_gs_images = []
|
|
19
|
+
|
|
20
|
+
for gs_uri in unique_gs_matches:
|
|
21
|
+
mime_type = guess_mime_type(gs_uri)
|
|
22
|
+
if mime_type is None:
|
|
23
|
+
continue
|
|
24
|
+
|
|
25
|
+
log.info(f"Getting bytes from GCS: {gs_uri}")
|
|
26
|
+
image_bytes = get_bytes_from_gcs(gs_uri)
|
|
27
|
+
if image_bytes is None:
|
|
28
|
+
continue
|
|
29
|
+
|
|
30
|
+
# Get the basename from the gs_uri to use as the file name
|
|
31
|
+
file_name = os.path.basename(gs_uri)
|
|
32
|
+
|
|
33
|
+
# Create a temporary directory and write the file with the basename
|
|
34
|
+
with tempfile.TemporaryDirectory() as temp_dir:
|
|
35
|
+
temp_file_path = os.path.join(temp_dir, file_name)
|
|
36
|
+
|
|
37
|
+
# Write the BytesIO object to the file
|
|
38
|
+
with open(temp_file_path, 'wb') as temp_file:
|
|
39
|
+
temp_file.write(image_bytes)
|
|
40
|
+
|
|
41
|
+
# Pass the temporary file's path to the upload function
|
|
42
|
+
try:
|
|
43
|
+
uploaded_file = genai.upload_file(temp_file_path)
|
|
44
|
+
output_gs_images.append(uploaded_file)
|
|
45
|
+
except Exception as e:
|
|
46
|
+
log.error(f"Error adding {gs_uri} to base64: {str(e)}")
|
|
47
|
+
|
|
48
|
+
return output_gs_images
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: sunholo
|
|
3
|
-
Version: 0.101.
|
|
3
|
+
Version: 0.101.8
|
|
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.101.
|
|
6
|
+
Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.101.8.tar.gz
|
|
7
7
|
Author: Holosun ApS
|
|
8
8
|
Author-email: multivac@sunholo.com
|
|
9
9
|
License: Apache License, Version 2.0
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import re
|
|
2
|
-
from ..utils.mime import guess_mime_type
|
|
3
|
-
from ..gcs import get_bytes_from_gcs
|
|
4
|
-
from ..custom_logging import log
|
|
5
|
-
import io
|
|
6
|
-
import os
|
|
7
|
-
try:
|
|
8
|
-
import google.generativeai as genai
|
|
9
|
-
except ImportError:
|
|
10
|
-
genai = None
|
|
11
|
-
|
|
12
|
-
def extract_gs_images_and_genai_upload(content:str):
|
|
13
|
-
# Regular expression to find gs:// URLs
|
|
14
|
-
pattern = r'gs://[^ ]+\.(?:png|jpg|jpeg|pdf)'
|
|
15
|
-
|
|
16
|
-
gs_matches = re.findall(pattern, content)
|
|
17
|
-
unique_gs_matches = set(gs_matches)
|
|
18
|
-
output_gs_images = []
|
|
19
|
-
for gs_uri in unique_gs_matches:
|
|
20
|
-
mime_type = guess_mime_type(gs_uri)
|
|
21
|
-
if mime_type is None:
|
|
22
|
-
continue
|
|
23
|
-
|
|
24
|
-
log.info(f"Getting bytes from GCS: {gs_uri}")
|
|
25
|
-
image_bytes = get_bytes_from_gcs(gs_uri)
|
|
26
|
-
if image_bytes is None:
|
|
27
|
-
continue
|
|
28
|
-
image_file = io.BytesIO(image_bytes)
|
|
29
|
-
image_file.name = os.path.basename(gs_uri) # Assign a name, as some APIs require it
|
|
30
|
-
|
|
31
|
-
try:
|
|
32
|
-
uploaded_file = genai.upload_file(image_file)
|
|
33
|
-
output_gs_images.append(uploaded_file)
|
|
34
|
-
|
|
35
|
-
except Exception as e:
|
|
36
|
-
log.error(f"Error adding {gs_uri} to base64: {str(e)}")
|
|
37
|
-
|
|
38
|
-
return output_gs_images
|
|
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
|
|
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
|