Commit graph

2,893 commits

Author SHA1 Message Date
Gabriel Luiz Freitas Almeida
899a8fbb33 🔧 chore(__main__.py): change default value of cache option to None for better flexibility
🐛 fix(utils.py): handle ImportError when importing cache class and log a warning message
🔧 chore(settings.py): change default value of CACHE option to None for better flexibility

Fixes #880
2023-09-11 14:05:35 -03:00
Gabriel Luiz Freitas Almeida
f379d54686 🐛 fix(process.py): add support for processing Document objects in process_graph_cached function 2023-09-09 08:28:29 -03:00
Gabriel Luiz Freitas Almeida
c7554a2477 🔧 chore(langfuse.py): fix import statement for Langfuse to ignore type checking 2023-08-30 10:10:39 -03:00
Gabriel Luiz Freitas Almeida
2fe8e29546 Merge branch 'release' into langfuse_integration 2023-08-30 09:53:21 -03:00
Gabriel Luiz Freitas Almeida
afca3fe3e7 🔧 chore(base.py): add teardown method to Engine class for proper cleanup of the database engine
🔧 chore(base.py): add logging statement to teardown method for debugging purposes
🔧 chore(base.py): call dispose method on database engine instance in teardown method to properly release resources
🔧 chore(base.py): set database engine instance to None in teardown method to ensure proper cleanup
2023-08-30 09:51:02 -03:00
Gabriel Luiz Freitas Almeida
3efecc8b9b 🐛 fix(manager.py): add unique session id to avoid multiple clients with the same id
🐛 fix(utils.py): pass session id to process_graph function to ensure unique session id for each client
🐛 fix(base.py): pass session id to setup_callbacks function to ensure unique session id for each client
2023-08-30 09:50:19 -03:00
Gabriel Luiz Freitas Almeida
55bd1dc6ec 🔧 chore(main.py): import and add startup and shutdown events for LangfuseInstance to improve plugin functionality
🔧 chore(__init__.py): add empty file to create plugins directory structure
2023-08-30 09:49:57 -03:00
Gabriel Luiz Freitas Almeida
9559f1d684 feat(langfuse.py): add temporary implementation of LangfuseInstance class
The LangfuseInstance class is a temporary implementation that will be replaced by a plugin system in the future. This class provides methods for creating, getting, updating, and tearing down an instance of Langfuse. It uses the Langfuse library and credentials from the settings module to create the instance. If no credentials are found, the instance is set to None. The update method resets the instance and creates a new one. The teardown method flushes the instance and sets it to None.
2023-08-30 09:49:38 -03:00
Gabriel Luiz Freitas Almeida
3d9533a98a
🔀 refactor(OpenAIConversationalAgent.py): remove unused openai_api_base parameter to improve code readability and maintainability (#838) 2023-08-29 20:33:31 +00:00
Gabriel Luiz Freitas Almeida
8f27c71553
Bugfix - InputListComponent expect an array as Input() (#830) 2023-08-29 20:25:28 +00:00
Alexandre Henrique
9530230c2c Fixed the connection to the forward component 2023-08-29 16:34:40 -03:00
Gabriel Luiz Freitas Almeida
4bb7181587 🔀 refactor(OpenAIConversationalAgent.py): remove unused openai_api_base parameter to improve code readability and maintainability
🔀 refactor(OpenAIConversationalAgent.py): make openai_api_base parameter optional with a default value of None for better flexibility and backward compatibility
2023-08-29 15:25:55 -03:00
Alexandre Henrique
e7f94f23e4 added huggingface endpoints 2023-08-29 00:31:55 -03:00
Cristhian Zanforlin Lousa
dc3db7ce78 🔧 chore(inputListComponent): add TODO comment for handling conversion from string to array format
🔧 chore(inputListComponent): add recursive character text splitter to handle conversion from string to array format
2023-08-28 13:59:01 -03:00
Cristhian Zanforlin Lousa
c6f6e2008e 🔀 refactor(inputListComponent): improve code readability and handle value conversion from string to array format
📝 WHY: The InputListComponent expects an array format for the value prop, but sometimes it receives a string instead. To prevent errors and ensure smooth operation, we need to handle the conversion from a string to an array with the string as its element. This refactor improves code readability and clarifies the purpose of the value conversion logic.
2023-08-28 13:52:49 -03:00
Cristhian Zanforlin Lousa
517816bd3b 🐛 fix(inputListComponent): convert value to an array when it's a string to avoid errors in InputListComponent 2023-08-28 13:51:42 -03:00
Cristhian Zanforlin Lousa
3b1872dd4c 🐛 fix(inputListComponent): fix type error when value is a string by converting it to an array 2023-08-28 13:31:50 -03:00
Gabriel Luiz Freitas Almeida
cc4db3911e 🔀 chore(MetalRetriever.py): fix import statement for Metal class from metal_sdk.metal module to resolve type checking issue 2023-08-28 08:06:37 -03:00
Gabriel Luiz Freitas Almeida
b3b0f63a1f 🔀 merge(MetalRetriever.py): merge changes from langchain/retrievers to langchain/schema to keep codebase up to date
🔀 merge(MetalRetriever.py): merge changes from metal_sdk/metal to langchain/schema to keep codebase up to date
🐛 fix(MetalRetriever.py): change BaseRetriever import from langchain.schema.retriever to langchain.schema to match updated codebase
 feat(MetalRetriever.py): add error handling to MetalRetriever build method to raise ValueError if connection to Metal API fails
2023-08-28 07:54:59 -03:00
Gabriel Luiz Freitas Almeida
0f9279c68d feat(MetalRetriever.py): add MetalRetriever component to retrieve data using the Metal API
 feat(__init__.py): add empty __init__.py file to the retrievers directory to make it a package
2023-08-28 07:32:18 -03:00
Gabriel Luiz Freitas Almeida
748f38e8c4
Fixed bug where name is not changed when description changes (#813) 2023-08-25 01:58:09 +00:00
Gabriel Luiz Freitas Almeida
a28df1f08f 📝 docs(LanguageRecursiveTextSplitter.py): update documentation link to point to the correct URL
🔨 refactor(LanguageRecursiveTextSplitter.py): change type hints for the 'documents' parameter from Document to list[Document] and change return type from Document to list[Document] to improve clarity and consistency
🔨 refactor(LanguageRecursiveTextSplitter.py): change type hints for the 'chunk_overlap' parameter from Optional[int] to Optional[str] and handle conversion to int to improve flexibility and error handling
🔨 refactor(LanguageRecursiveTextSplitter.py): change type hints for the 'chunk_size' parameter from Optional[int] to Optional[str] and handle conversion to int to improve flexibility and error handling
🔨 refactor(RecursiveCharacterTextSplitter.py): change type hints for the 'documents' parameter from Document to list[Document] and change return type from Document to list[Document] to improve clarity and consistency
🔨 refactor(RecursiveCharacterTextSplitter.py): change type hints for the 'separators' parameter from Optional[str] to Optional[list[str]] and handle conversion to list of escaped characters to improve flexibility and error handling
🔨 refactor(RecursiveCharacterTextSplitter.py): change type hints for the 'chunk_overlap' parameter from Optional[int] to Optional[str] and handle conversion to int to improve flexibility and error handling
🔨 refactor(RecursiveCharacterTextSplitter.py): change type hints for the 'chunk_size' parameter from Optional[int] to Optional[str] and handle conversion to int to improve flexibility and error handling
2023-08-24 22:52:16 -03:00
Gabriel Luiz Freitas Almeida
c9f4969080 🐛 fix(types.py): fix regex pattern in extract_type_from_optional function to correctly extract type from optional field_type
🐛 fix(types.py): fix logic in add_new_custom_field function to correctly set is_list flag when field_type contains "list" keyword
 feat(types.py): add field_contains_list variable to check if field_type contains "list" keyword to improve semantics in add_new_custom_field function
2023-08-24 22:49:52 -03:00
Gabriel Luiz Freitas Almeida
86927d10d3 🔧 fix(types.py): add support for extracting inner type from list field types in process_type function 2023-08-24 22:37:30 -03:00
Gabriel Luiz Freitas Almeida
0649b61fca 📦 chore(LanguageRecursiveTextSplitter.py): add LanguageRecursiveTextSplitter component to split text into chunks based on language
📝 docs(LanguageRecursiveTextSplitter.py): add documentation link for LanguageRecursiveTextSplitter component
🔧 refactor(LanguageRecursiveTextSplitter.py): refactor build_config method to use options from Language enum for separator_type
🔧 refactor(LanguageRecursiveTextSplitter.py): refactor build method to split text into chunks based on specified length and overlap
🔧 refactor(LanguageRecursiveTextSplitter.py): refactor build method to handle chunk_size and chunk_overlap as integers
🔧 refactor(LanguageRecursiveTextSplitter.py): refactor build method to use RecursiveCharacterTextSplitter from langchain.text_splitter
🔧 refactor(LanguageRecursiveTextSplitter.py): refactor build method to split documents using RecursiveCharacterTextSplitter and return the chunks
2023-08-24 22:24:07 -03:00
Gabriel Luiz Freitas Almeida
86730437a5 feat(RecursiveCharacterTextSplitter.py): add RecursiveCharacterTextSplitter component to split text into chunks of a specified length 2023-08-24 22:23:45 -03:00
Gabriel Luiz Freitas Almeida
40ab6b1e87 🔥 refactor(config.yaml): remove RecursiveCharacterTextSplitter from the config file as it is no longer used
📚 docs(config.yaml): update documentation link for CharacterTextSplitter in the config file
2023-08-24 22:22:31 -03:00
Gabriel Luiz Freitas Almeida
95ff2a7f6b 🔧 chore(util.py): add missing import for 'Document' from langchain.schema
🔧 chore(util.py): add missing type hint for 'documents' parameter in build_loader_repr_from_documents function
🔧 chore(util.py): add logic to calculate average document length and display summary information in build_loader_repr_from_documents function
2023-08-24 22:22:09 -03:00
Gabriel Luiz Freitas Almeida
9fb1a26277 🐛 fix(manager.py): catch all exceptions instead of just TypeError when loading JSON payload to improve error handling and prevent crashes 2023-08-24 21:10:34 -03:00
Lucas Oliveira
1e5fc97013 Bug fixed 2023-08-24 20:21:09 -03:00
Lucas Oliveira
eaf70303ee Fixed bug where name is not changed when description changes 2023-08-24 10:52:23 -03:00
anovazzi1
cd6985591f fix(App.tsx): replace hardcoded error message with FetchErrorComponent to improve error handling and display
feat(App.tsx): add support for displaying fetch error message and description in FetchErrorComponent
feat(fetchErrorComponent): create FetchErrorComponent to display fetch error message and description
fix(genericIconComponent): add stroke-width property to ensure consistent icon stroke width
feat(loadingComponent): import LoadingComponentProps from types/components to improve type safety
feat(constants): add FETCH_ERROR_MESSAGE and FETCH_ERROR_DESCRIPTION constants for fetch error handling
fix(typesContext): remove console.log statement and set fetchError to true when an error occurs during fetching types
feat(typesContext): add error handling for fetching types and set fetchError to true when an error occurs
feat(typesContext): import fetchErrorComponentType from types/components to improve type safety
feat(types/components): create fetchErrorComponentType and LoadingComponentProps interfaces for type safety
fix(styleUtils): import Unplug icon from lucide-react to fix missing icon issue
2023-08-23 21:09:53 -03:00
anovazzi1
d9b03980f7 fix(typesContext.tsx): remove unnecessary code that checks result status and fetches health on error
fix(typesContext.tsx): handle error when fetching types and set fetchError state to true
2023-08-23 14:59:20 -03:00
anovazzi1
ea105ee7af refactor(typesContext.tsx): remove unnecessary retry logic and interval for fetching types
fix(typesContext.tsx): fix issue where component was not unmounting properly and causing memory leaks
2023-08-23 14:44:45 -03:00
anovazzi1
f22768c2bc fix(App.tsx): remove extra comma in the useContext hook
feat(App.tsx): add support for displaying fetch error message when there is an error in the backend API call
fix(typesContext.tsx): add error handling for API call and set fetchError state accordingly
feat(typesContext.tsx): add fetchError state and setFetchError function to the typesContext
2023-08-23 12:52:49 -03:00
Gabriel Luiz Freitas Almeida
cea4063637 🐛 fix(GetRequest.py): convert timeout to integer to avoid potential type errors
 feat(PostRequest.py): update display name to "POST Request" for better clarity and consistency
2023-08-22 17:53:55 -03:00
Gabriel Luiz Freitas Almeida
c6fc60d4b2 🔧 chore(GetRequest.py): add timeout parameter to the GetRequest component for configurable request timeout
📝 docs(GetRequest.py): update component documentation to include information about the new timeout parameter
2023-08-22 17:52:17 -03:00
Gabriel Luiz Freitas Almeida
c22a792a7f 📚 docs(GetRequest.py): add documentation link for the GET Request component
📚 docs(JSONDocumentBuilder.py): add documentation link for the JSON Document Builder component
📚 docs(PostRequest.py): add documentation link for the POST Request component
📚 docs(UpdateRequest.py): add documentation link for the Update Request component
2023-08-22 17:45:45 -03:00
Gabriel Luiz Freitas Almeida
42a268a678 📝 docs(components/utilities.mdx): add documentation for Update Request feature
🚀 feat(UpdateRequest.py): add UpdateRequest component to make PATCH or PUT requests to a given URL
2023-08-22 17:35:20 -03:00
Gabriel Luiz Freitas Almeida
b1779e849d 🔥 refactor(base.py): remove unused imports and code in base.py
🔥 refactor(base.py): remove unused variables and functions in base.py
2023-08-22 16:46:57 -03:00
Gabriel Luiz Freitas Almeida
f69fddb1a0 🔧 chore(settings.py): add missing import statement for json module
🔧 chore(settings.py): remove unused import statement for contextlib module

🔧 chore(settings.py): remove unused import statement for orjson module

🔧 chore(settings.py): remove unused import statement for os module

🔧 chore(settings.py): remove unused import statement for typing module
2023-08-22 16:42:09 -03:00
Gabriel Luiz Freitas Almeida
fb7513f7cb 🐛 fix(custom_component.py): change repr_value type from str to Any to allow any type of value to be assigned 2023-08-22 16:37:53 -03:00
Gabriel Luiz Freitas Almeida
938fcbab62 🐛 fix(GetRequest.py): change variable name 'url' to 'urls' to improve clarity and semantics
 feat(PatchRequest.py): add new component 'PatchRequest' to make PATCH requests to a given URL
🐛 fix(PostRequest.py): change variable name 'document' to 'documents' to improve clarity and semantics
2023-08-22 16:37:43 -03:00
Gabriel Luiz Freitas Almeida
05c8f5a0f8 🐛 fix(GetRequest.py): update orjson_dumps function call to set indent_2 parameter to False
🐛 fix(GetRequest.py): update return type annotation of get_documents method to list[Document]
🐛 fix(PostRequest.py): update return type annotation of post_document method to list[Document]
2023-08-22 16:13:07 -03:00
Gabriel Luiz Freitas Almeida
6fa2258aac 🔧 chore(manager.py): import orjson library for improved JSON serialization and deserialization performance 2023-08-22 16:12:42 -03:00
Gabriel Luiz Freitas Almeida
70f98f9150 🐛 fix(custom_component.py): extract inner type from return type if it starts with 'list' or 'List' to handle list types correctly 2023-08-22 16:12:30 -03:00
Gabriel Luiz Freitas Almeida
1dbe776e6a feat(utils.py): add function extract_inner_type to extract the inner type from a type hint that is a list 2023-08-22 16:11:47 -03:00
Gabriel Luiz Freitas Almeida
39ae660e45 🔧 chore(loading.py): add import statement for json module to fix missing import error 2023-08-22 16:11:37 -03:00
Gabriel Luiz Freitas Almeida
6634e8864b 🔧 chore(vector_store.py): import orjson library for JSON serialization and deserialization
🐛 fix(vector_store.py): fix typo in function comment, change "OR" to "or" for better readability
2023-08-22 16:11:24 -03:00
Gabriel Luiz Freitas Almeida
59652b8875 🔧 chore(prebuilt.py): import missing JSON_PREFIX and JsonToolkit to fix unresolved references
🔧 chore(prebuilt.py): import missing JSON_PREFIX and JsonToolkit to fix unresolved references in prebuilt.py
2023-08-22 16:11:10 -03:00