* Add new documentation files and update package dependencies
* Refactor tweak application logic in process_tweaks function
* Add dynamic function creation and execution helpers
* Refactor build method to be asynchronous
* Add FlowToolComponent to handle flows as tools
* Update RunFlowComponent to include a method for updating build config
* Fix duplicated first layer results
* Refactor vertex building and streaming endpoints
* Add base_name attribute to Vertex class
* Refactor flow.py to generate dynamic flow functions and build schemas
* Refactor FlowToolComponent in FlowTool.py
* Add JSONInputComponent to load JSON object as input
* Update render_tool_description method in XMLAgent.py
* Refactor XMLAgentComponent.render_tool_description() method
* Refactor SearchApi.py to include typing and handle empty records
* Refactor SearchApi class to simplify code
* Add SearchApi and SearchApiTool components
* Refactor ServiceFactory and Dependencies (#1560)
* Update dependencies for OpenTelemetry
* Update service dependency logic and add first version of telemetry service
* Remove telemetry service and related code
* Update cache service references
* Refactor imports in env.py
* Refactor code for initializing services and socketio server
* Refactor parameterComponent to use inline button_text
* Refactor build_vertex method and add RunnableVerticesManager class
* Add import statement and update build_vertex function
* Add import statement for SettingsService in MonitorServiceFactory.create() method
* Refactor build_schema_from_inputs to use display_name and description for field names and descriptions respectively
* Refactor graph building and running logic
* Update input type mappings and function arguments
* Update default values for input types in flow.py
* Remove console.log statement in flowStore.ts
* Add vertices_to_run field to VerticesOrderResponse
* Add input_value parameter to chain components
* Refactor CSVAgent build method to include handle_parse_errors parameter
* Add agent_type parameter to CSVAgent build method
* Update model imports in component files
* Add LCAgentComponent and XMLAgentComponent
* Add "agents" category to NATIVE_CATEGORIES
* Refactor model.py to support chat models
* Add system_message parameter to model components
* Update CSVAgent.py: handle_parsing_errors and agent_type options
* Add ping animation to update button
* Fix encryption and decryption of API keys
* Update CSVAgentComponent constructor
* Refactor inputs parameter to inputs_dict in build_vertex function
* Removes "component" table and drops "flowstyle" table
* Delete component model and init files
* Removes "flowstyle" table and drops "user" table index
* Add typing import to CohereModel.py
* Fix ShareModal rendering issue
* Update models docs
* Changed vector-stores docs
* Update component documentation
* Add AstraDB and AstraDBSearch components for AstraDB Vector Store docs
* Rename GetNotified to Listen
* Update GetNotifiedComponent import
* Remove unused imports in flow-runner.mdx and features.mdx
* Add new documentation files and update existing files
* Update package versions in package-lock.json
* Remove unused files
* Delete run-flow.mdx file
* Update topics
* Add new file run-flow.mdx
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@logspace.ai>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
* Initial Restructure
* Replace import langflow for import langflow_base
* Fix dependencies
* 🔧 chore(Makefile): refactor build process to separate base and frontend builds for better organization and maintainability
* 🚀 chore(Makefile): update build_frontend command to copy frontend build to the correct directory
🔖 chore(pyproject.toml): update python and httpx dependencies versions
🔧 chore(__init__.py): update import statement for load_flow_from_json function
* 🔖 chore(pyproject.toml): update package version from 0.0.6 to 0.0.8 to reflect changes in the codebase
* 🚀 feat(server.ts): change port variable case from lowercase port to uppercase PORT to improve semantics
🚀 feat(server.ts): add support for process.env.PORT environment variable to be able to run app on a configurable port
* 🐛 fix(server.ts): change port variable case from lowercase port to uppercase PORT to improve semantics
✨ feat(server.ts): add support for process.env.PORT environment variable to be able to run app on a configurable port
🚚 chore(pyproject.toml): update langflow-base version from 0.0.8 to 0.0.10
✨ feat(server.ts): add new agent component LCAgentComponent to langflow_base
✨ feat(server.ts): add new model component LCModelComponent to langflow_base
✨ feat(server.ts): add new helper functions docs_to_records and records_to_text to langflow_base
✨ feat(server.ts): add new flow helper functions list_flows, load_flow, run_flow, generate_function_for_flow, get_flow_inputs, build_schema_from_inputs to langflow_base
✨ feat(server.ts): add new prompt component PromptComponent to langflow_base
✨ feat(server.ts): add new chat components ChatInput and ChatOutput to langflow_base
✨ feat(server.ts): add new model component OpenAIModelComponent to langflow_base
🚚 chore(main.py): update import path from langflow.main to langflow_base.main
🚚 chore(service.py): update import path from langflow.services.database.manager to langflow_base.services.database.manager
🚚 chore(factory.py): update import path from langflow.services to langflow_base.services
🚚 chore(service.py): update import path from langflow.services.plugins to langflow_base.services.plugins
🚚 chore(utils.py): update import path from langflow.services to langflow_base.services
🚚 chore(validate.py): update import path from langflow.field_typing to langflow_base.field_typing
🚚 chore(pyproject.toml): update langflow-base version from 0.0.8 to 0.0.10
* Update Makefile to install backend dependencies and build langflow
* Add langflow main module and update __init__.py
* Update langflow install process to use implicit namespace
* Add langflow-base as a local dependency
* Add setup_poetry target to Makefile
* Update Poetry version and add poetry-monorepo-dependency-plugin
* Refactor code to improve performance and readability
* Update imports to custom and load
* Update content-hash in poetry.lock
---------
Co-authored-by: Matheus <jacquesmats@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@logspace.ai>
* Update docker-compose.yml
Problems with Docker Compose not being able to find the backend
* Bump vite from 4.5.1 to 4.5.2 in /src/frontend
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.5.1 to 4.5.2.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v4.5.2/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.5.2/packages/vite)
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
* Refactor: remove flow if there is no changes
* update group node function to reconnect edges when create groupNode
* Remove console.log statements
* Fix disallowed_special parameter in OpenAIEmbeddingsComponent
* Refactor CharacterTextSplitterComponent to use typing and update return value
* Update ChromaComponent configuration
* Bump version to 0.6.7a1 in pyproject.toml
* Add icon support to CustomComponent
* Add icon property to APIClassType
* Add emoji validation to icon field in custom components
* add emoji icon
* Fix: Error: cannot import name 'CreateTrace' from 'langfuse.callback'
* Refactor langflow processing and langfuse callback initialization
* Update version to 0.6.7a2 in pyproject.toml
* Fix: Bring back loading to avoid white page error
* Add dependabot.yml
* Bump actions/checkout from 2 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v4)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump github/codeql-action from 2 to 3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)
---
updated-dependencies:
- dependency-name: actions/setup-python
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump actions/cache from 2 to 4
Bumps [actions/cache](https://github.com/actions/cache) from 2 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v2...v4)
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump actions/setup-node from 3 to 4
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)
---
updated-dependencies:
- dependency-name: actions/setup-node
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* makes function args not to be sorted by name
* Add field_order property to CustomComponent
* Refactor Template class in base.py
* Update field_order to be an optional list
* Refactor custom component field ordering
* Update prompts.mdx
Update broken link to all page building to complete
* add icon regex
* add isEmoji
* Fix invalid emoji error handling
* Fix invalid emoji validation in Component class
* add logic to icon name
* changing to useCallback function
* Add HuggingFaceInferenceAPIEmbeddingsComponent class
* Update QdrantComponent build method to handle pre-existing vector-stores
* Update python-multipart version
* Update dependencies in pyproject.toml
* Add Python 3.11 support to lint and test workflows
* Refactor import statements in Qdrant.py
* Update dependencies in pyproject.toml
* Fix documentation link and code formatting
* Fix validation of icon field in Component class
* Update imports and deactivate test
* Fixed group nodes appearing at tooltip
* Update imports and type annotations in several components
* Remove Python 3.9 from matrix in test.yml
* refactor: icon fragments functions
* Default display_name to None
* 🔧 chore(base.py): update serialize_display_name method to handle cases where display_name is not set and convert name to title case if title_case is True
* Fix error handling and formatting in component.py and typesStore.ts
* add controlX feature
* Add files via upload
* Fixed groupByFamily
* Add LiteLLMComponent to the project
* Add ChatLiteLLM component to backend
* Update ChatLiteLLM import and add verbose option
* Remove unused code in ChatLiteLLM.py
* Rename LiteLLMComponent to ChatLiteLLMComponent
* Changes some parameters for mypy linting compatibility
* Update cookie settings for login and refresh_token functions
* Update cookie settings for secure access
* Update cookie settings for login and token refresh
* Refactor authentication cookie settings
* Update version to 0.6.7a3 in pyproject.toml
* Fix formatting and import issues
* Import litellm package and update ChatLiteLLMComponent class
* Update version to 0.6.7a3 and fix formatting and import issues (#1445)
* Update version to 0.6.7a3 in pyproject.toml
* Fix formatting and import issues
* Import litellm package and update ChatLiteLLMComponent class
* Update login.py with new auth settings
* Update version to 0.6.7a4 in pyproject.toml
* Update version to 0.6.7a5 in pyproject.toml
* Update Langflow README (#1456)
* Update Langflow README
* Refactor flow creation process
* Update README.md
* Removed some phrases, changed Creating Flows section
* Update README.md with additional project references
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@logspace.ai>
* Add docs for field update, icon, and small fixes (#1459)
* Refactor code formatting and improve error handling in utils.py
* Refactor parameterComponent to include refresh button
* Update Langflow description
* Add new_langflow_demo.gif and remove langflow-demo.gif and langflow-screen.png
* Update image source path in README.md
* Add dynamic options and default value support to CustomComponent class
* Update version number in pyproject.toml
* Add title_case option to CustomComponent
* Refactor HuggingFaceEndpointsComponent imports and handle model_kwargs parameter
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: YoungWook KIM <ukng1024@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: igorrCarvalho <igorsilvabhz6@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Cristhian Zanforlin Lousa <72977554+Cristhianzl@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Łukasz Gajownik <lukasz.gajownik@ordergroup.pl>
Co-authored-by: Chris Bateman <chris-bateman@users.noreply.github.com>
Co-authored-by: Ricardo Henriques <paxcalpt@gmail.com>
Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
* Refactor code formatting and improve error handling in utils.py
* Refactor parameterComponent to include refresh button
* Update Langflow description
* Add new_langflow_demo.gif and remove langflow-demo.gif and langflow-screen.png
* Update image source path in README.md
* Add dynamic options and default value support to CustomComponent class
This pull request adds a new property called `field_order` to the
`CustomComponent` class. The `field_order` property allows developers to
define the order in which fields will be displayed in the canvas. This
can be useful for customizing the layout of the component.
#1373
🔧 chore(deploy): update docker-compose.override.yml to version 3.8
📦 chore(docker-compose.with_tests.yml): add docker-compose file with tests configuration
This commit adds a new docker-compose file named `docker-compose.with_tests.yml` which includes the configuration for running tests. The file includes the following services:
- `proxy`: Configures Traefik as a reverse proxy with Docker integration and enables access logs, the Traefik dashboard, and API.
- `backend`: Sets up the backend service with dependencies on a database, message broker, and result backend. It also includes labels for Traefik routing.
- `db`: Configures a PostgreSQL database with a volume for data persistence.
- `pgadmin`: Sets up pgAdmin for managing the PostgreSQL database.
- `result_backend`: Configures a Redis instance for the result backend.
- `celeryworker`: Sets up a Celery worker for background task processing.
- `flower`: Configures Flower for monitoring and managing Celery workers.
- `frontend`: Sets up the frontend service with labels for Traefik routing.
- `broker`: Configures RabbitMQ with the management console.
- `prometheus`: Sets up Prometheus for monitoring.
- `grafana`: Configures Grafana for visualization and monitoring.
- `tests`: Extends the `backend` service and runs pytest for running tests.
This file allows running the application with the necessary services for testing and monitoring.
🔧 chore(docker-compose.yml): add missing volumes and networks for services
🔧 chore(docker-compose.yml): add traefik-public network with configurable external setting for flexibility in testing
📝 docs(async-tasks.mdx): update docker-compose command to use the correct file name for running tests
🐛 fix(endpoints.py): update endpoint path for checking task status to match the updated path in the documentation
🐛 fix(schemas.py): add TaskResponse schema to properly handle task response data
🐛 fix(locustfile.py): update endpoint path for polling task status to match the updated path in the endpoints
🐛 fix(test_endpoints.py): update helper function and test cases to use the new task response structure and endpoint path for polling task status
📝 docs(guides): add async-tasks.mdx to provide a guide on using the Async API implementation
📝 docs(sidebars.js): update sidebar to include async-api.mdx and async-tasks.mdx in the appropriate sections
The login functionality in Langflow serves to authenticate users and protect sensitive routes in the application. This commit adds documentation for the login functionality, including information about the enhanced login mechanism introduced in version 0.5. It explains the environment variables that are crucial in configuring the login settings and provides instructions on how to set them securely. It also covers the command-line interface for managing superusers and provides details on the sign-up process and profile settings for users. Screenshots are included to illustrate the sign-up page, profile settings page, and admin page.