Spaces:
Running
Running
luanpoppe
commited on
Commit
·
eebeb78
1
Parent(s):
6dc173d
feat: refatorando arquivos com funções úteis do langchain
Browse files- _utils/bubble_integrations/obter_arquivo.py +1 -1
- _utils/gerar_relatorio_modelo_usuario/DocumentSummarizer_simples.py +1 -1
- _utils/gerar_relatorio_modelo_usuario/GerarDocumento.py +3 -3
- _utils/gerar_relatorio_modelo_usuario/contextual_retriever.py +1 -1
- _utils/gerar_relatorio_modelo_usuario/llm_calls.py +2 -2
- _utils/gerar_relatorio_modelo_usuario/utils.py +2 -47
- _utils/handle_files.py +1 -1
- _utils/{chains → langchain_utils}/Chain_class.py +0 -0
- _utils/{LLMs → langchain_utils}/LLM_class.py +0 -0
- _utils/{prompts → langchain_utils}/Prompt_class.py +0 -0
- _utils/{splitters → langchain_utils}/Splitter_class.py +1 -1
- _utils/{vector_stores → langchain_utils}/Vector_store_class.py +0 -0
- _utils/{splitters → langchain_utils}/splitter_util.py +0 -0
- _utils/resumo_completo_cursor.py +2 -2
- gerar_documento/views.py +3 -3
- tests/LLMs/test_LLM_class.py +2 -2
- tests/test_custom_exception_handler.py +2 -2
- tests/test_splitters.py +1 -1
- tests/test_utils.py +1 -1
_utils/bubble_integrations/obter_arquivo.py
CHANGED
@@ -5,7 +5,7 @@ import tempfile
|
|
5 |
import requests
|
6 |
|
7 |
from _utils.handle_files import return_document_list_with_llama_parser
|
8 |
-
from _utils.
|
9 |
|
10 |
splitter_utils = SplitterUtils()
|
11 |
headers = {"Authorization": f"Bearer {os.environ.get("BUBBLE_TOKEN")}"}
|
|
|
5 |
import requests
|
6 |
|
7 |
from _utils.handle_files import return_document_list_with_llama_parser
|
8 |
+
from _utils.langchain_utils.splitter_util import SplitterUtils
|
9 |
|
10 |
splitter_utils = SplitterUtils()
|
11 |
headers = {"Authorization": f"Bearer {os.environ.get("BUBBLE_TOKEN")}"}
|
_utils/gerar_relatorio_modelo_usuario/DocumentSummarizer_simples.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
from typing import List, Dict, Tuple, Optional
|
2 |
-
from _utils.
|
3 |
from setup.easy_imports import (
|
4 |
HuggingFaceEmbeddings,
|
5 |
Chroma,
|
|
|
1 |
from typing import List, Dict, Tuple, Optional
|
2 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
3 |
from setup.easy_imports import (
|
4 |
HuggingFaceEmbeddings,
|
5 |
Chroma,
|
_utils/gerar_relatorio_modelo_usuario/GerarDocumento.py
CHANGED
@@ -2,8 +2,8 @@ import os
|
|
2 |
from typing import List, Dict, Tuple, Optional, cast
|
3 |
|
4 |
from pydantic import SecretStr
|
5 |
-
from _utils.
|
6 |
-
from _utils.
|
7 |
from setup.easy_imports import (
|
8 |
Chroma,
|
9 |
ChatOpenAI,
|
@@ -20,7 +20,7 @@ from _utils.models.gerar_relatorio import (
|
|
20 |
RetrievalConfig,
|
21 |
)
|
22 |
from cohere import Client
|
23 |
-
from _utils.
|
24 |
|
25 |
|
26 |
class GerarDocumento:
|
|
|
2 |
from typing import List, Dict, Tuple, Optional, cast
|
3 |
|
4 |
from pydantic import SecretStr
|
5 |
+
from _utils.langchain_utils.LLM_class import LLM
|
6 |
+
from _utils.langchain_utils.Vector_store_class import VectorStore
|
7 |
from setup.easy_imports import (
|
8 |
Chroma,
|
9 |
ChatOpenAI,
|
|
|
20 |
RetrievalConfig,
|
21 |
)
|
22 |
from cohere import Client
|
23 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
24 |
|
25 |
|
26 |
class GerarDocumento:
|
_utils/gerar_relatorio_modelo_usuario/contextual_retriever.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
import os
|
2 |
-
from _utils.
|
3 |
from _utils.gerar_relatorio_modelo_usuario.utils import (
|
4 |
get_response_from_auxiliar_contextual_prompt,
|
5 |
validate_many_chunks_in_one_request,
|
|
|
1 |
import os
|
2 |
+
from _utils.langchain_utils.LLM_class import LLM
|
3 |
from _utils.gerar_relatorio_modelo_usuario.utils import (
|
4 |
get_response_from_auxiliar_contextual_prompt,
|
5 |
validate_many_chunks_in_one_request,
|
_utils/gerar_relatorio_modelo_usuario/llm_calls.py
CHANGED
@@ -2,7 +2,7 @@ import os
|
|
2 |
from typing import Literal
|
3 |
|
4 |
from pydantic import SecretStr
|
5 |
-
from _utils.
|
6 |
from setup.environment import default_model
|
7 |
from langchain_core.messages import HumanMessage
|
8 |
from langchain_openai import ChatOpenAI
|
@@ -58,4 +58,4 @@ def gpt_answer(
|
|
58 |
async def agemini_answer(prompt, model: Literal["gemini-2.0-flash", "gemini-2.0-flash-lite"]="gemini-2.0-flash"):
|
59 |
gemini = llm.google_gemini(model)
|
60 |
resposta = await gemini.ainvoke([HumanMessage(content=prompt)])
|
61 |
-
return resposta.content
|
|
|
2 |
from typing import Literal
|
3 |
|
4 |
from pydantic import SecretStr
|
5 |
+
from _utils.langchain_utils.LLM_class import LLM
|
6 |
from setup.environment import default_model
|
7 |
from langchain_core.messages import HumanMessage
|
8 |
from langchain_openai import ChatOpenAI
|
|
|
58 |
async def agemini_answer(prompt, model: Literal["gemini-2.0-flash", "gemini-2.0-flash-lite"]="gemini-2.0-flash"):
|
59 |
gemini = llm.google_gemini(model)
|
60 |
resposta = await gemini.ainvoke([HumanMessage(content=prompt)])
|
61 |
+
return resposta.content
|
_utils/gerar_relatorio_modelo_usuario/utils.py
CHANGED
@@ -3,8 +3,8 @@ from langchain_core.documents import Document
|
|
3 |
from langchain_core.messages import HumanMessage
|
4 |
|
5 |
from _utils.gerar_relatorio_modelo_usuario.llm_calls import agemini_answer
|
6 |
-
from _utils.
|
7 |
-
from _utils.
|
8 |
from _utils.gerar_relatorio_modelo_usuario.prompts import (
|
9 |
create_prompt_auxiliar_do_contextual_prompt,
|
10 |
)
|
@@ -89,51 +89,6 @@ def validate_many_chunks_in_one_request(
|
|
89 |
|
90 |
|
91 |
# Esta função gera a resposta que será usada em cada um das requisições de cada chunk
|
92 |
-
# async def get_response_from_auxiliar_contextual_prompt(
|
93 |
-
# full_text_as_array: List[str], full_text_as_string: str
|
94 |
-
# ):
|
95 |
-
# print("full_text_as_string: ", full_text_as_string)
|
96 |
-
|
97 |
-
# print("\nCRIANDO PROMPT AUXILIAR DO CONTEXTUAL")
|
98 |
-
# # PROMPT PARA GERAR O RESUMO INICIAL DO PROCESSO
|
99 |
-
# prompt_auxiliar_summary = create_prompt_auxiliar_do_contextual_prompt(
|
100 |
-
# full_text_as_string
|
101 |
-
# )
|
102 |
-
|
103 |
-
# import tiktoken
|
104 |
-
# import re
|
105 |
-
|
106 |
-
# # full_text_as_string = re.sub(r"\s+", " ", full_text_as_string).strip()
|
107 |
-
|
108 |
-
# encoding = tiktoken.get_encoding("cl100k_base")
|
109 |
-
# # Count tokens
|
110 |
-
# num_tokens = len(encoding.encode(full_text_as_string))
|
111 |
-
# with open("output.txt", "w", encoding="utf-8") as file:
|
112 |
-
# file.write(full_text_as_string)
|
113 |
-
# print(f"CONTAGEM DE TOKENS - {num_tokens}")
|
114 |
-
|
115 |
-
# print("\n\nprompt_auxiliar_summary[0:500]: ", prompt_auxiliar_summary[0:500])
|
116 |
-
|
117 |
-
# # Claude comentado pois o limite de tokens estava sendo passado pela requisição e dava erro
|
118 |
-
# # response_auxiliar_summary = await aclaude_answer(
|
119 |
-
# # self.claude_client, self.claude_context_model, prompt_auxiliar_summary
|
120 |
-
# # )
|
121 |
-
|
122 |
-
# llms = LLM()
|
123 |
-
# print("\nCOMEÇANDO REQUISIÇÃO AUXILIAR DO CONTEXTUAL")
|
124 |
-
# response_auxiliar_summary = await llms.google_gemini().ainvoke(
|
125 |
-
# [HumanMessage(content=prompt_auxiliar_summary)]
|
126 |
-
# )
|
127 |
-
# print("TERMINOU REQUISIÇÃO AUXILIAR DO CONTEXTUAL")
|
128 |
-
|
129 |
-
# print(
|
130 |
-
# "\n\nresponse_auxiliar_summary.content[0:500]: ",
|
131 |
-
# response_auxiliar_summary.content[0:500],
|
132 |
-
# )
|
133 |
-
|
134 |
-
# return response_auxiliar_summary.content
|
135 |
-
|
136 |
-
|
137 |
async def get_response_from_auxiliar_contextual_prompt(full_text_as_array: List[str]):
|
138 |
import tiktoken
|
139 |
|
|
|
3 |
from langchain_core.messages import HumanMessage
|
4 |
|
5 |
from _utils.gerar_relatorio_modelo_usuario.llm_calls import agemini_answer
|
6 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
7 |
+
from _utils.langchain_utils.LLM_class import LLM
|
8 |
from _utils.gerar_relatorio_modelo_usuario.prompts import (
|
9 |
create_prompt_auxiliar_do_contextual_prompt,
|
10 |
)
|
|
|
89 |
|
90 |
|
91 |
# Esta função gera a resposta que será usada em cada um das requisições de cada chunk
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
async def get_response_from_auxiliar_contextual_prompt(full_text_as_array: List[str]):
|
93 |
import tiktoken
|
94 |
|
_utils/handle_files.py
CHANGED
@@ -4,7 +4,7 @@ from langchain_core.documents import Document as LangchainDocument
|
|
4 |
from llama_index import Document
|
5 |
from llama_parse import LlamaParse, ResultType
|
6 |
|
7 |
-
from _utils.
|
8 |
|
9 |
llama_parser_keys = [
|
10 |
os.getenv("LLAMA_CLOUD_API_KEY_POPS"),
|
|
|
4 |
from llama_index import Document
|
5 |
from llama_parse import LlamaParse, ResultType
|
6 |
|
7 |
+
from _utils.langchain_utils.splitter_util import SplitterUtils
|
8 |
|
9 |
llama_parser_keys = [
|
10 |
os.getenv("LLAMA_CLOUD_API_KEY_POPS"),
|
_utils/{chains → langchain_utils}/Chain_class.py
RENAMED
File without changes
|
_utils/{LLMs → langchain_utils}/LLM_class.py
RENAMED
File without changes
|
_utils/{prompts → langchain_utils}/Prompt_class.py
RENAMED
File without changes
|
_utils/{splitters → langchain_utils}/Splitter_class.py
RENAMED
@@ -1,6 +1,6 @@
|
|
1 |
from _utils.bubble_integrations.obter_arquivo import get_pdf_from_bubble
|
2 |
from _utils.handle_files import return_document_list_with_llama_parser
|
3 |
-
from _utils.
|
4 |
SplitterUtils,
|
5 |
combine_documents_without_losing_pagination,
|
6 |
)
|
|
|
1 |
from _utils.bubble_integrations.obter_arquivo import get_pdf_from_bubble
|
2 |
from _utils.handle_files import return_document_list_with_llama_parser
|
3 |
+
from _utils.langchain_utils.splitter_util import (
|
4 |
SplitterUtils,
|
5 |
combine_documents_without_losing_pagination,
|
6 |
)
|
_utils/{vector_stores → langchain_utils}/Vector_store_class.py
RENAMED
File without changes
|
_utils/{splitters → langchain_utils}/splitter_util.py
RENAMED
File without changes
|
_utils/resumo_completo_cursor.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
import os
|
2 |
from langchain_core.messages import HumanMessage
|
3 |
from typing import cast
|
4 |
-
from _utils.
|
5 |
from _utils.bubble_integrations.enviar_resposta_final import enviar_resposta_final
|
6 |
from _utils.custom_exception_handler import custom_exception_handler_wihout_api_handler
|
7 |
from _utils.gerar_relatorio_modelo_usuario.prompts import (
|
@@ -24,7 +24,7 @@ from _utils.models.gerar_relatorio import (
|
|
24 |
)
|
25 |
import markdown
|
26 |
|
27 |
-
from _utils.
|
28 |
from _utils.utils import convert_markdown_to_HTML
|
29 |
|
30 |
|
|
|
1 |
import os
|
2 |
from langchain_core.messages import HumanMessage
|
3 |
from typing import cast
|
4 |
+
from _utils.langchain_utils.LLM_class import LLM
|
5 |
from _utils.bubble_integrations.enviar_resposta_final import enviar_resposta_final
|
6 |
from _utils.custom_exception_handler import custom_exception_handler_wihout_api_handler
|
7 |
from _utils.gerar_relatorio_modelo_usuario.prompts import (
|
|
|
24 |
)
|
25 |
import markdown
|
26 |
|
27 |
+
from _utils.langchain_utils.Prompt_class import Prompt
|
28 |
from _utils.utils import convert_markdown_to_HTML
|
29 |
|
30 |
|
gerar_documento/views.py
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
from typing import Any, Dict, cast
|
2 |
from langchain.prompts import PromptTemplate
|
3 |
-
from _utils.
|
4 |
from _utils.gerar_relatorio_modelo_usuario.utils import (
|
5 |
get_full_text_and_all_PDFs_chunks,
|
6 |
)
|
7 |
-
from _utils.
|
8 |
from setup.easy_imports import (
|
9 |
Response,
|
10 |
AsyncAPIView,
|
@@ -24,7 +24,7 @@ from .serializer import (
|
|
24 |
GerarEmentaSerializer,
|
25 |
)
|
26 |
import asyncio
|
27 |
-
from _utils.
|
28 |
|
29 |
|
30 |
class GerarDocumentoView(AsyncAPIView):
|
|
|
1 |
from typing import Any, Dict, cast
|
2 |
from langchain.prompts import PromptTemplate
|
3 |
+
from _utils.langchain_utils.LLM_class import LLM
|
4 |
from _utils.gerar_relatorio_modelo_usuario.utils import (
|
5 |
get_full_text_and_all_PDFs_chunks,
|
6 |
)
|
7 |
+
from _utils.langchain_utils.Prompt_class import Prompt
|
8 |
from setup.easy_imports import (
|
9 |
Response,
|
10 |
AsyncAPIView,
|
|
|
24 |
GerarEmentaSerializer,
|
25 |
)
|
26 |
import asyncio
|
27 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
28 |
|
29 |
|
30 |
class GerarDocumentoView(AsyncAPIView):
|
tests/LLMs/test_LLM_class.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
import pytest
|
2 |
import os
|
3 |
-
from _utils.
|
4 |
-
from _utils.
|
5 |
from _utils.models.gerar_relatorio import (
|
6 |
DocumentChunk,
|
7 |
)
|
|
|
1 |
import pytest
|
2 |
import os
|
3 |
+
from _utils.langchain_utils.LLM_class import LLM
|
4 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
5 |
from _utils.models.gerar_relatorio import (
|
6 |
DocumentChunk,
|
7 |
)
|
tests/test_custom_exception_handler.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
import pytest
|
2 |
import os
|
3 |
-
from _utils.
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|
@@ -15,7 +15,7 @@ from django.core.handlers.wsgi import WSGIRequest
|
|
15 |
# @pytest.mark.asyncio
|
16 |
# def test_function_that_raises(self):
|
17 |
# client = APIClient()
|
18 |
-
|
19 |
# invalid_data = {
|
20 |
# "name": "wrong property"
|
21 |
# }
|
|
|
1 |
import pytest
|
2 |
import os
|
3 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|
|
|
15 |
# @pytest.mark.asyncio
|
16 |
# def test_function_that_raises(self):
|
17 |
# client = APIClient()
|
18 |
+
|
19 |
# invalid_data = {
|
20 |
# "name": "wrong property"
|
21 |
# }
|
tests/test_splitters.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
import pytest
|
2 |
import os
|
3 |
-
from _utils.
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|
|
|
1 |
import pytest
|
2 |
import os
|
3 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|
tests/test_utils.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
import pytest
|
2 |
import os
|
3 |
-
from _utils.
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|
|
|
1 |
import pytest
|
2 |
import os
|
3 |
+
from _utils.langchain_utils.Splitter_class import Splitter
|
4 |
from _utils.models.gerar_relatorio import (
|
5 |
DocumentChunk,
|
6 |
)
|