Split Langflow into Langflow and Langflow Base (#1562)
* 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>
This commit is contained in:
parent
9c0bad3883
commit
8172e62236
466 changed files with 5418 additions and 1144 deletions
102
src/backend/base/pyproject.toml
Normal file
102
src/backend/base/pyproject.toml
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
[tool.poetry]
|
||||
name = "langflow-base"
|
||||
version = "0.0.11"
|
||||
description = "A Python package with a built-in web application"
|
||||
authors = ["Logspace <contact@logspace.ai>"]
|
||||
maintainers = [
|
||||
"Carlos Coelho <carlos@logspace.ai>",
|
||||
"Cristhian Zanforlin <cristhian.lousa@gmail.com>",
|
||||
"Gabriel Almeida <gabriel@logspace.ai>",
|
||||
"Gustavo Schaedler <gustavopoa@gmail.com>",
|
||||
"Igor Carvalho <igorr.ackerman@gmail.com>",
|
||||
"Lucas Eduoli <lucaseduoli@gmail.com>",
|
||||
"Otávio Anovazzi <otavio2204@gmail.com>",
|
||||
"Rodrigo Nader <rodrigo@logspace.ai>",
|
||||
]
|
||||
repository = "https://github.com/logspace-ai/langflow"
|
||||
license = "MIT"
|
||||
readme = "README.md"
|
||||
keywords = ["nlp", "langchain", "openai", "gpt", "gui"]
|
||||
packages = [{ include = "langflow" }]
|
||||
include = ["pyproject.toml", "README.md", "langflow/**/*"]
|
||||
documentation = "https://docs.langflow.org"
|
||||
|
||||
[tool.poetry.scripts]
|
||||
langflow-base = "langflow.__main__:main"
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = ">=3.9,<3.12"
|
||||
|
||||
fastapi = "^0.109.0"
|
||||
httpx = "^0.24.0"
|
||||
uvicorn = "^0.27.0"
|
||||
gunicorn = "^21.2.0"
|
||||
langchain = "~0.1.0"
|
||||
sqlmodel = "^0.0.14"
|
||||
loguru = "^0.7.1"
|
||||
rich = "^13.7.0"
|
||||
langchain-experimental = "*"
|
||||
pydantic = "^2.5.0"
|
||||
pydantic-settings = "^2.1.0"
|
||||
websockets = "^10.3"
|
||||
typer = "^0.9.0"
|
||||
cachetools = "^5.3.1"
|
||||
platformdirs = "^4.2.0"
|
||||
python-multipart = "^0.0.7"
|
||||
orjson = "3.9.15"
|
||||
alembic = "^1.13.0"
|
||||
passlib = "^1.7.4"
|
||||
bcrypt = "4.0.1"
|
||||
pillow = "^10.2.0"
|
||||
docstring-parser = "^0.15"
|
||||
python-jose = "^3.3.0"
|
||||
pandas = "2.2.0"
|
||||
multiprocess = "^0.70.14"
|
||||
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
pytest-asyncio = "^0.21.1"
|
||||
types-redis = "^4.6.0.5"
|
||||
ipykernel = "^6.26.0"
|
||||
mypy = "^1.7.1"
|
||||
ruff = "^0.1.5"
|
||||
httpx = "*"
|
||||
pytest = "^7.4.2"
|
||||
types-requests = "^2.31.0"
|
||||
requests = "^2.31.0"
|
||||
pytest-cov = "^4.1.0"
|
||||
pandas-stubs = "^2.0.0.230412"
|
||||
types-pillow = "^9.5.0.2"
|
||||
types-pyyaml = "^6.0.12.8"
|
||||
types-python-jose = "^3.3.4.8"
|
||||
types-passlib = "^1.7.7.13"
|
||||
locust = "^2.16.1"
|
||||
pytest-mock = "^3.11.1"
|
||||
pytest-xdist = "^3.3.1"
|
||||
types-pywin32 = "^306.0.0.4"
|
||||
types-google-cloud-ndb = "^2.2.0.0"
|
||||
pytest-sugar = "^0.9.7"
|
||||
|
||||
|
||||
[tool.poetry.extras]
|
||||
deploy = ["langchain-serve", "celery", "redis", "flower"]
|
||||
local = ["llama-cpp-python", "sentence-transformers", "ctransformers"]
|
||||
all = ["deploy", "local"]
|
||||
|
||||
|
||||
[tool.pytest.ini_options]
|
||||
minversion = "6.0"
|
||||
addopts = "-ra"
|
||||
testpaths = ["tests", "integration"]
|
||||
console_output_style = "progress"
|
||||
filterwarnings = ["ignore::DeprecationWarning"]
|
||||
log_cli = true
|
||||
markers = ["async_test"]
|
||||
|
||||
|
||||
[tool.ruff]
|
||||
exclude = ["src/backend/langflow/alembic/*"]
|
||||
line-length = 120
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
Loading…
Add table
Add a link
Reference in a new issue