* format
* chore: Bump langflow version to 1.0.0a34 and langflow-base version to 0.0.45
* Fix fallback_to_env_vars type hint
* chore: Add fallback_to_env_vars parameter to run_flow_from_json function
The `run_flow_from_json` function now accepts a new optional parameter `fallback_to_env_vars` which determines whether Global Variables should fallback to environment variables if not found. This change allows for more flexibility in handling variable values.
* chore: Add fallback_to_env_vars parameter to run_flow_from_json function
* chore: Set file path to None when not found in component
This commit modifies the `Vertex` class to set the file path to `None` when it is not found for a required field in a component. This change ensures that the code can handle missing file paths gracefully and avoids raising a `ValueError`.
* chore: Add fallback_to_env_vars parameter to run_flow_from_json function
* new package lock
This commit fixes an issue in the `loading.py` file where environment variables were not being properly fallbacked to if not found in custom component keys. It also updates the documentation to inform users about the new feature of falling back to environment variables if the variable value is not found in custom component keys.
* 🐛 (loading.py): Fix issue where environment variables were not being properly fallbacked to if not found in custom component keys
📝 (loading.py): Update documentation to inform users about the new feature of falling back to environment variables if variable value is not found in custom component keys
* add fallback_to_env_vars to build vertex
* feat: Add get_final_results_only parameter to build_records_from_result_data method
The `build_records_from_result_data` method in the `SubFlowComponent` class now accepts a `get_final_results_only` parameter. This parameter controls whether the output will contain all outputs from the flow or only the final results. This change allows for more flexibility in handling the result data.
* chore: Refactor loading of settings and handle missing keys
* chore: Update .env.example file with new configuration options
* Ignore database files in .gitignore
* Refactor loading of settings and handle missing keys
* Update DOWNLOAD_WEBHOOK_URL in base settings to use the correct URL for triggering flows in the Langflow store.
* 🐛 (base.py): Fix condition to copy existing database to new location only if SAVE_DB_IN_CONFIG_DIR is true
* 🐛 (base.py): update log message to accurately reflect the action being taken when creating a new database
* feat(codeTabsComponent): add ExportModal component to enable exporting flow data in CodeTabsComponent
* refactor(service.py): update VariableService to handle environment variables with
whitespace by stripping the value before creating the variable
* chore: Update package versions to 1.0.0a33 and 0.0.44 for 'langflow' and 'langflow-base' respectively
* make lock
* Add support for Python 3.12
* chore: Update Python version to 3.11 and DuckDB dependency to 0.10.2
* chore: fix mistral components lint
* Update SQLAgent and SQLExecutor imports to use langchain_community utilities
* Update langchain import to langchain_community
* Update langchain import to langchain_community
* 📝 (langflow/__main__.py): Import warnings module to suppress warnings during app execution
📝 (langflow/api/v1/schemas.py): Update timestamp field default value to use datetime.now with timezone.utc
📝 (auth/utils.py): Ignore warnings related to datetime.utcnow when decoding JWT tokens and creating refresh tokens
📝 (models/flow/model.py): Update updated_at field default value to use lambda function with timezone.utc
📝 (models/user/model.py): Update create_at and updated_at field default values to use lambda function with timezone.utc
* Added Mistral AI LLM Model and added MistralAI embeddings.
* Added tracking to the new MistralAIEmbeddings.py and MistalModel.py
* Added MistralAI model specs and added the correct models list to the Mistral Model LLM component.
* Actually added the MistralAI model specs this time.
* Update ZepMessageReader and ZepMessageWriter to avoid 404 error
* Update ZepMessageReader and ZepMessageWriter to use API Base Path option
* Update ZepMessageReader and ZepMessageWriter to fix API Base Path and avoid 404 error
* Update ZepMessageReader and ZepMessageWriter to use API Base Path option
* Refactor TextOperatorComponent to include true_output parameter
* Refactor TextOperatorComponent to include true_output parameter
* Add PassComponent to experimental components
* ✨ (openai_constants.py): add a new file to define constant MODEL_NAMES for OpenAI models
♻️ (ChatOpenAISpecs.py, OpenAIModel.py): refactor to use MODEL_NAMES constant from openai_constants.py for consistency and easier maintenance
* ✨ (IDGenerator.py): update key name from 'real_time_refresh' to 'refresh_button' for better clarity and consistency
🐛 (chat.py): Raise HTTPException with status code 400 if "stream or streaming set to True" is found in the exception message
📝 (base.py): Add method `validate_stream` to Graph class to validate stream configuration and prevent connected vertices with stream or streaming set to True
📝 (base.py): Update method `get_all_successors` in Graph class to specify type hint for the `vertex` parameter and return type
📝 (base.py): Update method `get_successors` in Graph class to specify type hint for the `vertex` parameter and return type
* Update package.json format command to include only specific directories
* Add GroqLogo component and GroqIcon to the project
* Update dependencies and add GroqModelSpecs component
* Fix nullable column issue in langflow/alembic/versions/6e7b581b5648_fix_nullable.py
* Add GroqModelSpecs component and update dependencies
* Update GroqModelSpecs and GroqModel display names
* chore: Add langchain-pinecone dependency and update constants.py
* Update langchain-pinecone dependency and related code
* Add Pinecone API key to environment variables
* Fix commented out code in codeTabsComponent, parameterComponent, and editNodeModal
* Add PineconeSearchComponent to PineconeSearch.py
* Update PineconeComponent to accept pinecone_api_key as optional parameter
* Fix mark_branch function in Graph class to properly handle visited vertices
* Refactor build_and_cache_graph_from_db function in utils.py to simplify code and remove unnecessary parameter
* Fix retrieval of graph from cache in retrieve_vertices_order function
* Fix possible_id type annotation in get_id_from_search_string function
* Refactor APIRequest class to improve variable naming and remove unnecessary underscore prefix in headers parameter
* Refactor buildVertices function in buildUtils.ts to improve code readability and remove unnecessary variable assignment
* Fix API endpoints in test_endpoints.py to use correct HTTP methods
♻️ (APIRequest.py): refactor APIRequest class to improve variable naming and remove unnecessary underscore prefix in headers parameter
💡 (APIRequest.py): update comments in APIRequest class to improve code readability and maintainability
The input and output components FileInput.py, JsonInput.py, KeyPairInput.py, StringListInput.py, CSVOutput.py, ImageOutput.py, JsonOutput.py, KeyPairOutput.py, PDFOutput.py, and StringListOutput.py were deleted as they were no longer being used in the project. This cleanup improves code organization and reduces unnecessary dependencies.
🐛 (constants.py): fix import statement for JsonSpec from langchain.tools.json.tool to langchain_community.tools.json.tool
🐛 (index.tsx): add data-testid attribute to the div element to improve testability
🐛 (buildUtils.ts): add debugger statement for debugging purposes
🐛 (chatInputOutput.spec.ts): fix click event target from "Run" to "Playground"
🐛 (fileUploadComponent.spec.ts): fix click event target from "Run" to "Playground"
🐛 (textInputOutput.spec.ts): fix click event target from "Run" to "Playground"
* Refactor store_message function in chat.py and memory.py
* Refactor store_message function in chat.py and memory.py
* Add StoreMessageComponent to langflow components
* Refactor store_message function in chat.py and memory.py to require session_id, sender, and sender_name
* Refactor StoreMessageComponent to use Optional[str] for sender_name and session_id parameters
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
In our ongoing commitment to enhancing user experience and streamlining
data interaction, we are thrilled to introduce a trio of powerful IO
components: JSON Viewer, DictionaryIO, and InputListIO. These components
are meticulously crafted to empower developers with seamless data
handling capabilities, enabling efficient processing and visualization
of JSON data structures, dictionaries, and input lists.
📝 (StringListOutput.py): update parameter name from "param" to "input_value" to improve clarity and consistency
📝 (index.tsx): add InputListComponent to handle StringListInput and StringListOutput components in IOFieldView
📝 (index.tsx): update InputListComponent props to include value, onChange, disabled, and playgroundDisabled
📝 (index.tsx): update IOFieldView to render InputListComponent for StringListInput and StringListOutput components
* Refactor RoutingVertex class in types.py to include a new step in the steps list
* Refactor Graph class to update run_manager.run_predecessors when activating vertices
* Refactor ShouldRunNextComponent class in ShouldRunNext.py to improve error handling and readability
* Refactor error handling in get_lifespan function in main.py and fix mismatch between models and database in DatabaseService class in service.py
* Fix vertex inactivation
* Fix inactivation of vertices and update buildUtils
* Refactor ShouldRunNextComponent class to improve error handling and readability
* Refactor langflow.graph.vertex.types imports in base.py
* Fix nullable constraint in langflow migration script
* Fix condition check in ShouldRunNextComponent class
* Refactor build_graph_maps function in base.py to accept optional parameters for edges and vertices
* Apply grayscale effect to ring-muted-foreground in applies.css
* Apply grayscale effect to ring-muted-foreground in applies.css
✨ (KeyPairOutput.py): add a new custom component called "KeyPairOutput" to handle dictionary outputs
✨ (StringListOutput.py): add a new custom component called "StringListOutput" to handle string list outputs
🚀 (constants.ts): add "StringListInput" and "StringListOutput" to the list of supported input and output types
♻️ (index.tsx): refactor IOKeyPairInput component to accept an additional prop "isInputField" and disable input fields if it's false
♻️ (index.tsx): refactor IOFieldView component to handle rendering of "StringListInput" and "StringListOutput" components