Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PR v1.1.1 #10

Merged
merged 728 commits into from
Nov 26, 2024
Merged
Changes from 1 commit
Commits
Show all changes
728 commits
Select commit Hold shift + click to select a range
a1cddbc
feat: add ContentBlock streaming visualization (#4370)
ogabrielluiz Nov 6, 2024
472b5fb
fix: resolve issue with adding global variable when input is connecte…
anovazzi1 Nov 7, 2024
4cc9912
Feat: Add Docusaurus redirect capability (#4435)
mendonk Nov 7, 2024
e047e13
build(deps): bump elliptic from 6.5.5 to 6.6.0 in /docs (#4325)
dependabot[bot] Nov 7, 2024
ab5103b
build(deps): bump http-proxy-middleware from 2.0.6 to 2.0.7 in /docs …
dependabot[bot] Nov 7, 2024
311bf00
fix: update error message structure in ChatMessage component (#4445)
ogabrielluiz Nov 7, 2024
ada5f17
fix: Add Helper for Field Processing & Update Code Validation Logic (…
Cristhianzl Nov 7, 2024
e6a1bd3
feat: add cli option to display version (#4444)
italojohnny Nov 7, 2024
a45f0ac
docs: replace --timeout with --worker-timeout (#4447)
italojohnny Nov 7, 2024
e63cace
fix: Improve Connection Line Styling and Cleanup Unused Code in FlowP…
Cristhianzl Nov 7, 2024
f9ae9f2
feat: Enhance sidebar components (#4452)
Cristhianzl Nov 7, 2024
0169821
fix: removed Pytest that uses Add Tool Output (#4437)
edwinjosechittilappilly Nov 7, 2024
18d0841
build: add curl to ep image (#4456)
jordanrfrazier Nov 7, 2024
3a1c030
buid: reduce number of layers in runtime env for langflow-ep build (#…
jordanrfrazier Nov 7, 2024
1434786
fix: adding atlassian-python-api to support confluence components (#4…
edwinjosechittilappilly Nov 7, 2024
1e4594a
feat: Implement tool mode functionality and dynamic placeholders acro…
ogabrielluiz Nov 8, 2024
0bf7dda
fix: component-set-handle-list-tools (#4465)
edwinjosechittilappilly Nov 8, 2024
0f6098a
feat: add tool mode to components, Added current date tool to agent (…
edwinjosechittilappilly Nov 8, 2024
19301b1
ci: stop backend unit tests on first failure (#4466)
italojohnny Nov 8, 2024
1138869
Docs: backend only mode (#4405)
mendonk Nov 8, 2024
7114cc4
ci: Add temporary database setup for performance tests (#4469)
ogabrielluiz Nov 8, 2024
9827463
fix: remove use of ImagePromptTemplate in image handling and adds ima…
ogabrielluiz Nov 8, 2024
a4863bb
fix: pdf parsing, pass as str instead of posix path (#4448)
erichare Nov 8, 2024
6761df6
fix: update nav bar UI, changed user menu to use shadcn dropdown, fix…
lucaseduoli Nov 8, 2024
a09652c
fix: refactor loading of main page, use new Sidebar in main page, fix…
lucaseduoli Nov 8, 2024
c5495c4
fix: Remove 'refresh_button' from DropdownInput in AgentComponent con…
ogabrielluiz Nov 8, 2024
b898d8a
fix: refactor sidebar disposition for sidebar to not push main out of…
lucaseduoli Nov 8, 2024
8681c56
feat: Enhance backend with context management, error handling, and re…
ogabrielluiz Nov 8, 2024
f32360f
fix: changed component colors name to not override existing colors, f…
lucaseduoli Nov 8, 2024
33a42bc
Docs: Authentication (#4476)
mendonk Nov 8, 2024
69a1c16
fix: serialize BaseModel subclasses and avoid calling methods on type…
ogabrielluiz Nov 9, 2024
6ace831
feat: Add 'isToolMode' prop for enhanced tool mode support (#4483)
ogabrielluiz Nov 10, 2024
fa28541
feat: Add Google Oauth Token Component (#4383)
viniciossilva3 Nov 11, 2024
357c587
feat: Adding Semantic Text Splitter Component (Text Splitters) (#4254)
joaoguilhermeS Nov 11, 2024
f43fd89
fix: Enhance extract_class_name function to identify Component subcla…
ogabrielluiz Nov 11, 2024
76c91de
fix: Enable sorting of chat inputs to improve UI message speed (#4480)
ogabrielluiz Nov 11, 2024
5a6c556
Feat: Adding Mem0 Integration (#4339)
joaoguilhermeS Nov 11, 2024
f66f31d
refactor: Small improvements to sidebar, customParams, and flowToolba…
mfortman11 Nov 11, 2024
1188812
fix: Simplify exception handling and refactor error messaging (#4496)
ogabrielluiz Nov 11, 2024
06b7450
feat: Enhance tool mapping and output rendering with animations (#4481)
ogabrielluiz Nov 11, 2024
859b72d
fix: add colors to the templates and main page cards (#4497)
lucaseduoli Nov 11, 2024
6b3bf7b
chore: Add 'lf' and 'ff' options to Makefile for pytest configuration…
ogabrielluiz Nov 11, 2024
29e4844
feat: Refactor langflow Components - Consolidate Imports, Remove Unus…
Cristhianzl Nov 11, 2024
537a801
fix: Update duckduckgo-search to 6.3.4 and improve tests (#4504)
Cristhianzl Nov 11, 2024
133a8ae
fix: change input display name of Webhook component to "Payload" (#4507)
Cristhianzl Nov 11, 2024
961189a
fix: prevent nested scrolling in markdown code blocks (#4505)
Cristhianzl Nov 11, 2024
aea9804
fix: AWS Bedrock components (#4503)
edwinjosechittilappilly Nov 11, 2024
a107650
FIX: Properly pass missing vectorize params in Astra DB (#4511)
erichare Nov 11, 2024
19963de
fix: ParseJSONDataComponent prevent unnecessary array wrapping (#4357)
bhatsanket Nov 11, 2024
8bb0f65
fix: Use AsyncSession in some non-blocking APIs (#4484)
cbornet Nov 11, 2024
768e6f0
fix: Make from_template_and_variables async for backwards compatibili…
ogabrielluiz Nov 12, 2024
bbaec2b
fix: adding info to Agent and related components (#4495)
edwinjosechittilappilly Nov 12, 2024
7dfce1d
refactor: Enhance tools with enums and improved error handling (#4493)
ogabrielluiz Nov 12, 2024
ca12a45
fix: Fix tweaks text color (#4513)
mfortman11 Nov 12, 2024
eb5cb2e
refactor: Remove cursor highlighting feature (#4508)
anovazzi1 Nov 12, 2024
0e101ef
fix: update SignUpPage component styling to use full screen height (#…
anovazzi1 Nov 12, 2024
84dd031
feat: Add YouTube transcript extraction component and frontend integr…
Cristhianzl Nov 12, 2024
4254d8e
style: update border radius and add orange datatype color (#4522)
Cristhianzl Nov 12, 2024
f34d57a
fix: update step duration display and logic (#4506)
anovazzi1 Nov 12, 2024
516ba89
fix: bedrock component handling AWS constants (#4514)
edwinjosechittilappilly Nov 12, 2024
8cd8721
feat: Add a WikiData API Tool Component (#4512)
erichare Nov 12, 2024
2ddd773
refactor: rename CSV component and update Google OAuth imports (#4521)
Cristhianzl Nov 12, 2024
692af0e
Docs: Settings pages (#4425)
mendonk Nov 12, 2024
ab71e2f
fix: upgraded agent tool mode switch ux, fixed icon color on main pag…
lucaseduoli Nov 12, 2024
bcd7617
Docs: Contributing folder (#4415)
mendonk Nov 12, 2024
9456142
feat: Implement new Langflow Logo throughout the application (#4509)
mfortman11 Nov 12, 2024
ae966ab
fix: added new image to get started templates, fixed sidebar overlapp…
lucaseduoli Nov 12, 2024
0dc6cce
tests: Enhance component testing and error handling with dynamic retr…
ogabrielluiz Nov 12, 2024
1dfa160
fix: issue with dynamic inputs when selecting model (#4538)
erichare Nov 12, 2024
be44183
fix: KeyError in Langchain Hub component (#4530)
erichare Nov 12, 2024
4f90552
feature: update firecrawl components (#4458)
italojohnny Nov 12, 2024
3d65de4
ci: Add concurrency control to Run benchmarks workflow (#4551)
ogabrielluiz Nov 12, 2024
145d67f
feat: add aws bedrock to AgentComponent (#4515)
edwinjosechittilappilly Nov 12, 2024
aca2b4b
fix: tools as `requried=False` in Agents (#4525)
edwinjosechittilappilly Nov 12, 2024
9e64ae8
Docs: New Getting Started (#4547)
mendonk Nov 12, 2024
70ebfc4
fix: Ensure ordering of astradb inputs (#4552)
erichare Nov 12, 2024
8e42baf
feat: update favicon (#4553)
mfortman11 Nov 12, 2024
824f39e
fix: Fix header z-index issues (#4549)
mfortman11 Nov 12, 2024
f05decb
refactor: Update AccountMenu and HeaderMenu components (#4534)
deon-sanchez Nov 12, 2024
01431ee
fix: aws bedrock load db credentials issue (#4537)
edwinjosechittilappilly Nov 12, 2024
e2bdaf5
fix: ContentBlockDisplay styling for block titles (#4550)
anovazzi1 Nov 12, 2024
1199690
feat(input): Add drag prevention to popover and improve icon fallback…
Cristhianzl Nov 12, 2024
335b649
fix: Pass the OpenAI API Key to Crew() (#4555)
erichare Nov 13, 2024
f8f9b7c
feat: add SIGTERM handling and update `typer` dependency (#4548)
ogabrielluiz Nov 13, 2024
168c716
fix: update error handling in request for litellm models (#4536)
phact Nov 13, 2024
da833a5
fix: added model utils to get the model name (#4532)
edwinjosechittilappilly Nov 13, 2024
ac540a0
fix: update tool mode toggle behavior in NodeToolbarComponent (#4554)
anovazzi1 Nov 13, 2024
8e0d6d5
fix: Refactor DataFilterComponent inputs (#4524)
anovazzi1 Nov 13, 2024
9c004e7
refactor: increase search sensitivity and simplify metadata filtering…
Cristhianzl Nov 13, 2024
e68c21a
fix: refactor settings page to use new sidebar and fix old bugs (#4545)
lucaseduoli Nov 13, 2024
7c0c881
feat: Add option to deactivate tracing in service settings (#4527)
ogabrielluiz Nov 13, 2024
f1fd5be
feat: add new starter projects and replace old ones (#4557)
anovazzi1 Nov 13, 2024
0abc51d
fix: AccountMenu component to conditionally render logout button base…
anovazzi1 Nov 13, 2024
7b78a16
fix: Agent Component update_build_config, Nvidia and other model dyna…
edwinjosechittilappilly Nov 13, 2024
1cd21e5
fix: Update setup of templates to consider component type (#4523)
anovazzi1 Nov 13, 2024
f978223
fix: Add session_id and graph parameters to flow execution functions …
ogabrielluiz Nov 13, 2024
8d89bf4
refactor: reorganize memory components and enhance model inputs with …
Cristhianzl Nov 13, 2024
654d481
refactor: standardize toolbar select item widths and improve alignmen…
Cristhianzl Nov 13, 2024
9d98fba
refactor(NodeToolbar): Remove open prop from Select component (#4563)
Cristhianzl Nov 13, 2024
5bb588c
fix: aws components and model lists (#4560)
edwinjosechittilappilly Nov 13, 2024
151c369
refactor: update starter projects to newest version of Components (#4…
ogabrielluiz Nov 13, 2024
f91a700
ci: Limit workflows to Python files and optimize environment setup (#…
ogabrielluiz Nov 13, 2024
3a73e01
fix: Astra DB Graph Vector Store langchain 0.3.x (#4568)
erichare Nov 13, 2024
563b90e
fix: changes get started templates image, adds set color index to eve…
lucaseduoli Nov 13, 2024
4e2ee25
test: Enhance test stability (#4566)
Cristhianzl Nov 13, 2024
f78d3f4
chore: Bump version to 1.1.0 and 0.1.0 for langflow and langflow-base…
ogabrielluiz Nov 13, 2024
34b107b
fix: process.py to use validate_and_repair_json from utils.py (#4576)
anovazzi1 Nov 13, 2024
da03993
fix: improve js api code and fix tooltip z-index (#4577)
lucaseduoli Nov 13, 2024
313f197
ci: Update CI path filters for frontend tests (#4571)
ogabrielluiz Nov 13, 2024
2b00041
refactor: Minor style fixes (#4578)
deon-sanchez Nov 13, 2024
2cf3881
fix: Upgrade astradb version and graph db component (#4580)
erichare Nov 13, 2024
b25726a
chore: Update langflow-base dependency to version 0.1.0 (#4581)
ogabrielluiz Nov 13, 2024
348a7c2
ci: Strip 'v' prefix from version and remove obsolete release workflo…
ogabrielluiz Nov 13, 2024
c8ac7e6
ci: Add condition to PyPI publish step in release workflow (#4585)
ogabrielluiz Nov 13, 2024
24f5638
ci: Add GitHub Actions workflow for creating releases (#4587)
ogabrielluiz Nov 14, 2024
c7f688c
Docs: update screenshots with new UI changes (#4579)
mendonk Nov 14, 2024
0709625
Docs: agents (#4561)
mendonk Nov 14, 2024
5e69628
Fix: New Logo is not updated in README.md (#4589)
irshadmb Nov 14, 2024
2f96dbb
docs: replace documentation icon and primary color (#4582)
lucaseduoli Nov 14, 2024
0f5c31f
fix: correct user_id access logic (#4595)
dhlidongming Nov 14, 2024
4723ab4
ci: Exclude specific components from Codspeed workflow paths (#4596)
ogabrielluiz Nov 14, 2024
af54655
fix: resolve potential deadlock in AsyncInMemoryCache (#4464)
dhlidongming Nov 14, 2024
533fc1f
chore: Revert "Fix: New Logo is not updated in README.md" (#4604)
ogabrielluiz Nov 14, 2024
83f23a6
chore: Add hero image file (#4606)
ogabrielluiz Nov 14, 2024
7d9315b
fix: missing sqlite dialect (#4599)
italojohnny Nov 14, 2024
349a1fe
refactor: Improve time and use waitForSelector in auto-login tests (#…
anovazzi1 Nov 14, 2024
467e546
docs: Update local run instructions in CONTRIBUTING.md (#4615)
ogabrielluiz Nov 14, 2024
3391a26
fix: update notes border color, update node and notes code block back…
lucaseduoli Nov 14, 2024
076bc31
refactor: Remove unnecessary wait timeouts in chat components tests (…
anovazzi1 Nov 14, 2024
0461baf
refactor: Improve time and use waitForSelector instead of timeouts in…
anovazzi1 Nov 14, 2024
44b0531
feat: add NestedDictInput filter and non-vector search for AstraVecto…
mieslep Nov 14, 2024
7c04865
chore: move alembic exception logging to debug (#4620)
jordanrfrazier Nov 14, 2024
88c0596
refactor: Update layout in emptyFolder and homePage components (#4623)
deon-sanchez Nov 15, 2024
2881346
fix: change color of output inspector when tool mode, change fuzzy se…
lucaseduoli Nov 15, 2024
6573ca1
fix: Use AsyncSession for user management (#4491)
cbornet Nov 16, 2024
efe6407
fix: Rename `namespace` to `keyspace` in astra db (#4635)
erichare Nov 16, 2024
da01f5c
fix: Use AsyncSession in build_graph_from_db (#4649)
cbornet Nov 17, 2024
a7aa3ab
fix: Use AsyncSession in delete_vertex_builds (#4653)
cbornet Nov 17, 2024
95779c8
fix: Ensure attribute existence before accessing in AgentExecutor ini…
ogabrielluiz Nov 18, 2024
9ec66cd
fix: Add check for 'set_event_manager' method in custom_component bef…
ogabrielluiz Nov 18, 2024
a86a7a2
fix: Add worker_task attribute to TelemetryService to prevent Attribu…
ogabrielluiz Nov 18, 2024
1362062
fix: Ensure chat inputs with dependencies are not prioritized in grap…
ogabrielluiz Nov 18, 2024
af1a8b7
fix(TextAreaComponent): Update focus state padding and icon visibilit…
Cristhianzl Nov 18, 2024
5df0854
fix: update Tavily URL in Sequential Tasks Agents starter project (#…
ogabrielluiz Nov 18, 2024
596c27b
fix: error on fetch for no headers on request (#4624)
anovazzi1 Nov 18, 2024
50ac92d
docs: add icons component with lucide-react integration (#4682)
Cristhianzl Nov 18, 2024
8bb9c01
Docs: upgrade and pin docusaurus to v3.5.2 (#4646)
mendonk Nov 18, 2024
c3dbabb
feat: add latest models to Google Generative AI, Anthropic Models (#4…
edwinjosechittilappilly Nov 18, 2024
64ac6dd
fix: update hero and integrations image in readme (#4628)
kurtenj Nov 18, 2024
160409d
refactor: Enhance migration script with column existence check and im…
ogabrielluiz Nov 18, 2024
b9ffce2
fix: Update background color in FlowMenu dropdown (#4681)
deon-sanchez Nov 18, 2024
a0cd179
refactor: Improve time and use waitForSelector in folder tests (#4614)
anovazzi1 Nov 18, 2024
3d768ea
fix: make provider switching work by setting attributes on SecretStrI…
edwinjosechittilappilly Nov 18, 2024
cd2517f
refactor: improve tests for group and keyBoardComponentSearch tests (…
anovazzi1 Nov 18, 2024
3188517
feat: Add support for dynamic providers in Astra DB Comp (#4627)
erichare Nov 18, 2024
2fa2580
fix: CrewAI-based flows with no extra openai (#4683)
erichare Nov 18, 2024
4965971
refactor: Improve performance in logs.spec.ts and format code (#4671)
anovazzi1 Nov 19, 2024
e6cd335
refactor: time and use waitForSelector in filterSidebar.spec.ts (#4609)
anovazzi1 Nov 19, 2024
6133fed
fix: Ensure the service selection comes before the choice (#4692)
erichare Nov 19, 2024
7614cfb
refactor: Remove unnecessary exception logging and improve error logg…
ogabrielluiz Nov 19, 2024
faee93e
feat: make AIML load dynamically and fix minor issues (#4374)
waterstark Nov 19, 2024
50aa618
fix: is null sql statement (#4690)
jordanrfrazier Nov 19, 2024
699ec18
fix: add Groq Model Constants (#4689)
edwinjosechittilappilly Nov 19, 2024
50defed
fix: add a check in ComponentToolkit to avoid building a tool that bu…
ogabrielluiz Nov 19, 2024
d28c7f4
fix: removes delay for running flow skeleton (#4679)
anovazzi1 Nov 19, 2024
a76e43f
feat: Add post-update callback to setNode and improve node internals …
Cristhianzl Nov 19, 2024
3539207
fix: Add unique keys to Badge components in HandleTooltipComponent (#…
Cristhianzl Nov 19, 2024
1aef2d8
chore: Update README.md with local image assets for hero and integrat…
ogabrielluiz Nov 19, 2024
d65274d
chore: remove unnecessary target from makefile (#4702)
italojohnny Nov 19, 2024
a1fa8ec
fix: update Basic Prompting and Vector Store RAG notes (#4644)
mendonk Nov 19, 2024
67a9fff
feat: Extend mongodb component with mTLS (#4591)
PythonbergIT Nov 19, 2024
1b39ce6
ref: Make check_langflow_version async (#4701)
cbornet Nov 19, 2024
25a0d76
fix: update import for compatibility, format starter projects, fix co…
ogabrielluiz Nov 19, 2024
9e8715c
fix: enhance folder download endpoint with zip file support (#4706)
Cristhianzl Nov 19, 2024
fb83af2
chore: Add pyproject.toml configuration to ruff format command in Mak…
ogabrielluiz Nov 19, 2024
e7e364e
chore: add deprecation flag on base upload flow route (#4717)
jordanrfrazier Nov 19, 2024
f1c0075
fix: correct issue with Milvus field name, renamed connection passwor…
ericljx2020-gmail Nov 19, 2024
39cec36
fix: fix overflow for lists in markdown render (#4720)
anovazzi1 Nov 19, 2024
ffd9eaa
fix: update Test Docker Images workflow to use get_version_info (#4721)
ogabrielluiz Nov 19, 2024
c9e0d5e
fix: updated node toolbar to be more stable on zoom, fix success and …
lucaseduoli Nov 19, 2024
b978241
fix: assign orphaned flows to superuser if auto-login is enabled (#4715)
italojohnny Nov 19, 2024
ebe4f34
refactor: Improve time and use waitForSelector in globalVariables.spe…
anovazzi1 Nov 19, 2024
a0acf39
feat: Add database cleanup functions for transactions and vertex buil…
ogabrielluiz Nov 19, 2024
9ceb18a
fix: reset tool mode after update component code (#4723)
anovazzi1 Nov 19, 2024
d5010c5
refactor: Improve GitHub link styling in AppHeader component (#4737)
deon-sanchez Nov 20, 2024
3fd4a61
docs: Update agent tool documentation and enhance flow as tool compon…
mendonk Nov 20, 2024
32554b4
docs: add google integration (#4382)
viniciossilva3 Nov 20, 2024
3e57340
Fix: simple agent template notes (#4709)
mendonk Nov 20, 2024
105e52f
docs: update Message object in guides-data-message.md (#4727)
anovazzi1 Nov 21, 2024
9450f85
fix: Update dependency versions for pydantic to fix sqlmodel conflict…
ogabrielluiz Nov 21, 2024
be7eac9
fix: Gracefully handle missing imports for model components (#4743)
ogabrielluiz Nov 21, 2024
4f27dbd
chore: speed up whl install in cli tests with uv (#4764)
phact Nov 21, 2024
12407f0
fix: Indent JSON output for exported flow data (#4750)
ogabrielluiz Nov 21, 2024
e728e40
fix: ensure unique flow names when assigning to superuser and avoid a…
italojohnny Nov 21, 2024
c08d237
fix: changed width of sidebar to be consistent across application (#4…
lucaseduoli Nov 21, 2024
674e724
docs: update playground docs (#4704)
anovazzi1 Nov 21, 2024
13f79e5
docs: Update documentation for new playground in workspace overview (…
anovazzi1 Nov 21, 2024
d0c3ed1
docs: update guide for chat memory (#4703)
anovazzi1 Nov 21, 2024
8ebe108
refactor: improve freeze-path.spec.ts and freeze.spec.ts files (#4618)
anovazzi1 Nov 21, 2024
6fe7a58
fix: Add validation for MessageBase type in message input conversion …
ogabrielluiz Nov 21, 2024
3160c54
fix: conditionally enable useGetFoldersQuery in AppInitPage after ini…
Cristhianzl Nov 21, 2024
f0febbc
fix: changed tooltip position on playground to improve visibility, fi…
lucaseduoli Nov 22, 2024
e5f73c5
fix: update design of update component (#4761)
lucaseduoli Nov 22, 2024
6737368
fix: Improve wait time in saveComponents.spec.ts (#4673)
anovazzi1 Nov 22, 2024
6946536
fix: update edge z index when node is selected (#4765)
lucaseduoli Nov 22, 2024
725a256
fix: remove useSidebar to fix errors of SidebarWrapper when opening p…
lucaseduoli Nov 22, 2024
8fb19ad
fix: Error in SerpAPI search: cannot access local variable 'wrapper'…
edwinjosechittilappilly Nov 22, 2024
7689082
chore: remove legacy component checks and alerts (#4757)
Cristhianzl Nov 22, 2024
226453a
refactor: Replace InputComponent with Select dropdown (#4719)
Cristhianzl Nov 22, 2024
b1a552f
fix: refactor get all to fix types not being fetched before checking …
lucaseduoli Nov 22, 2024
1532da5
fix: traces inputs and outputs not being sent to tracing services (#…
rogeriochaves Nov 22, 2024
20f26a9
fix: Improve waiting logic in tweksTest.spec.ts (#4674)
anovazzi1 Nov 22, 2024
84fa2fc
fix(astradb_tools): sets some options as Advanced and improves descri…
smatiolids Nov 22, 2024
efca9f9
refactor: Improve componentHoverAdd.spec test (#4608)
anovazzi1 Nov 22, 2024
13321a3
feat: rename MetaphorToolkit file to ExaSearchToolkit and update comp…
Cristhianzl Nov 22, 2024
d31fa35
feat: add Google icons to search-related components (#4760)
Cristhianzl Nov 22, 2024
e208776
feat: Add FolderSync icon to UpdateDataComponent in update_data.py (#…
anovazzi1 Nov 22, 2024
8903af9
Merge branch 'pr-1.1.0'
diogocabral Nov 22, 2024
5ed32cb
feat: Add PlaygroundButton component to flow toolbar (#4712)
Cristhianzl Nov 22, 2024
b3b2b25
fix: fixes Ollama Embeddings component (#4787)
edwinjosechittilappilly Nov 22, 2024
a06f777
docs: add documentation for external database configuration (#4707)
ogabrielluiz Nov 22, 2024
4ee53f2
FIX: return all attributes in wikidata (#4786)
erichare Nov 22, 2024
68a0b7d
fix: handle Message in path input in CSVAgentComponent (#4784)
mieslep Nov 22, 2024
08849b6
feat: adds LangChain Fake Embeddings (#4789)
mieslep Nov 22, 2024
f440552
fix: do not render page while examples are loading (#4768)
lucaseduoli Nov 22, 2024
230a019
fix: validation for tool name (#4790)
edwinjosechittilappilly Nov 22, 2024
061971f
chore: Tighten up dependencies (#4792)
phact Nov 22, 2024
0a42341
feat: disable browser autocomplete on popover input fields (#4573)
Cristhianzl Nov 22, 2024
214d5a9
feat: add icons to API components and update Python icon SVG (#4794)
Cristhianzl Nov 22, 2024
b3181ce
fix: Implement useFlowUpdate hook and refactor node code management (…
Cristhianzl Nov 22, 2024
4620669
fix: Fix flow addition to session and handle IntegrityError for orpha…
ogabrielluiz Nov 22, 2024
39c34fc
fix: add underline to name of component to make it look clickable on …
lucaseduoli Nov 22, 2024
ef2199b
feat: LLM routing integration via NotDiamond (#4543)
barabasicsongor Nov 23, 2024
1120915
fix: clean invisible edge when toggling tool mode (#4795)
lucaseduoli Nov 23, 2024
e61fb96
refactor: Improve error messaging for missing message fields in memor…
ogabrielluiz Nov 23, 2024
ab63ddd
ref: Use blockbuster package (#4777)
cbornet Nov 23, 2024
3e1b22b
feat: improve composio oauth experience (#4613)
kaavee315 Nov 23, 2024
598832f
refactor: Improve decision flow and remove timeouts (#4785)
anovazzi1 Nov 23, 2024
94bdc8e
refactor: improve timeout handling in Document QA test (#4798)
anovazzi1 Nov 23, 2024
a670edd
feat: Bump blockbuster to v1.1.1 (#4802)
cbornet Nov 23, 2024
eb960cf
refactor: improve test speed for Blog Writer integration (#4771)
anovazzi1 Nov 24, 2024
647ceea
refactor: improve waiting logic in Basic Prompting test (#4770)
anovazzi1 Nov 24, 2024
bd15071
refactor: updates import statements to use Pydantic in aiml_embedding…
ogabrielluiz Nov 24, 2024
ca2aa08
fix: Improve timeout handling in Blog Writer integration test (#4811)
anovazzi1 Nov 25, 2024
0b15084
fix: update all outdated components at once (#4763)
lucaseduoli Nov 25, 2024
450b371
fix: raise ImportError instead of silencing AttributeError (#4812)
italojohnny Nov 25, 2024
aa73e6f
fix: swap descriptions for Load Data Flow and Retriever Flow in templ…
mendonk Nov 25, 2024
0919440
chore: Bump package versions for langflow and langflow-base (#4816)
ogabrielluiz Nov 25, 2024
84981fc
chore: Update langflow-base dependency to version 0.1.1 (#4817)
ogabrielluiz Nov 25, 2024
7f411fd
Merge branch 'main' into pr-1.1.1
diogocabral Nov 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: Add YouTube transcript extraction component and frontend integr…
…ation (langflow-ai#4502)

* add new youtube transcripts component

* [autofix.ci] apply automated fixes

* ✨ (youtube-transcripts.spec.ts): add integration test for youtube transcripts component in the frontend to ensure user can interact with it successfully

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
  • Loading branch information
Cristhianzl and autofix-ci[bot] authored Nov 12, 2024

Verified

This commit was signed with the committer’s verified signature.
ob-stripe Olivier Bellone
commit 84dd03198d15d60a3e7195e3aa7ade99b7516a17
2 changes: 2 additions & 0 deletions src/backend/base/langflow/components/tools/__init__.py
Original file line number Diff line number Diff line change
@@ -19,6 +19,7 @@
from .wikipedia_api import WikipediaAPIComponent
from .wolfram_alpha_api import WolframAlphaAPIComponent
from .yahoo_finance import YfinanceToolComponent
from .youtube_transcripts import YouTubeTranscriptsComponent

with warnings.catch_warnings():
warnings.simplefilter("ignore", LangChainDeprecationWarning)
@@ -45,4 +46,5 @@
"WikipediaAPIComponent",
"WolframAlphaAPIComponent",
"YfinanceToolComponent",
"YouTubeTranscriptsComponent",
]
173 changes: 173 additions & 0 deletions src/backend/base/langflow/components/tools/youtube_transcripts.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
from langchain.tools import StructuredTool
from langchain_community.document_loaders import YoutubeLoader
from langchain_community.document_loaders.youtube import TranscriptFormat
from langchain_core.tools import ToolException
from pydantic import BaseModel, Field

from langflow.base.langchain_utilities.model import LCToolComponent
from langflow.field_typing import Tool
from langflow.inputs import DropdownInput, IntInput, MultilineInput
from langflow.schema import Data
from langflow.template import Output


class YoutubeApiSchema(BaseModel):
"""Schema to define the input structure for the tool."""

url: str = Field(..., description="The YouTube URL to get transcripts from.")
transcript_format: TranscriptFormat = Field(
TranscriptFormat.TEXT,
description="The format of the transcripts. Either 'text' for a single "
"text output or 'chunks' for timestamped chunks.",
)
chunk_size_seconds: int = Field(
120,
description="The size of each transcript chunk in seconds. Only "
"applicable when 'Transcript Format' is set to 'chunks'.",
)
language: str = Field(
"",
description="A comma-separated list of language codes in descending " "priority. Leave empty for default.",
)
translation: str = Field(
"", description="Translate the transcripts to the specified language. " "Leave empty for no translation."
)


class YouTubeTranscriptsComponent(LCToolComponent):
"""A component that extracts spoken content from YouTube videos as transcripts."""

display_name: str = "YouTube Transcripts"
description: str = "Extracts spoken content from YouTube videos as transcripts."
icon: str = "YouTube"

inputs = [
MultilineInput(
name="url", display_name="Video URL", info="Enter the YouTube video URL to get transcripts from."
),
DropdownInput(
name="transcript_format",
display_name="Transcript Format",
options=["text", "chunks"],
value="text",
info="The format of the transcripts. Either 'text' for a single output "
"or 'chunks' for timestamped chunks.",
),
IntInput(
name="chunk_size_seconds",
display_name="Chunk Size (seconds)",
value=60,
advanced=True,
info="The size of each transcript chunk in seconds. Only applicable when "
"'Transcript Format' is set to 'chunks'.",
),
MultilineInput(
name="language",
display_name="Language",
info="A comma-separated list of language codes in descending priority. " "Leave empty for default.",
),
DropdownInput(
name="translation",
display_name="Translation Language",
advanced=True,
options=["", "en", "es", "fr", "de", "it", "pt", "ru", "ja", "ko", "hi", "ar", "id"],
info="Translate the transcripts to the specified language. " "Leave empty for no translation.",
),
]

outputs = [
Output(name="transcripts", display_name="Data", method="build_youtube_transcripts"),
Output(name="transcripts_tool", display_name="Tool", method="build_youtube_tool"),
]

def build_youtube_transcripts(self) -> Data | list[Data]:
"""Method to build transcripts from the provided YouTube URL.

Returns:
Data | list[Data]: The transcripts of the video, either as a single
Data object or a list of Data objects.
"""
try:
loader = YoutubeLoader.from_youtube_url(
self.url,
transcript_format=TranscriptFormat.TEXT
if self.transcript_format == "text"
else TranscriptFormat.CHUNKS,
chunk_size_seconds=self.chunk_size_seconds,
language=self.language.split(",") if self.language else ["en"],
translation=self.translation if self.translation else None,
)

transcripts = loader.load()

if self.transcript_format == "text":
# Extract only the page_content from the Document
return Data(data={"transcripts": transcripts[0].page_content})
# For chunks, extract page_content and metadata separately
return [Data(data={"content": doc.page_content, "metadata": doc.metadata}) for doc in transcripts]

except Exception as exc: # noqa: BLE001
# Using a specific error type for the return value
return Data(data={"error": f"Failed to get YouTube transcripts: {exc!s}"})

def youtube_transcripts(
self,
url: str = "",
transcript_format: TranscriptFormat = TranscriptFormat.TEXT,
chunk_size_seconds: int = 120,
language: str = "",
translation: str = "",
) -> Data | list[Data]:
"""Helper method to handle transcripts outside of component calls.

Args:
url: The YouTube URL to get transcripts from.
transcript_format: Format of transcripts ('text' or 'chunks').
chunk_size_seconds: Size of each transcript chunk in seconds.
language: Comma-separated list of language codes.
translation: Target language for translation.

Returns:
Data | list[Data]: Video transcripts as single Data or list of Data.
"""
try:
if isinstance(transcript_format, str):
transcript_format = TranscriptFormat(transcript_format)
loader = YoutubeLoader.from_youtube_url(
url,
transcript_format=TranscriptFormat.TEXT
if transcript_format == TranscriptFormat.TEXT
else TranscriptFormat.CHUNKS,
chunk_size_seconds=chunk_size_seconds,
language=language.split(",") if language else ["en"],
translation=translation if translation else None,
)

transcripts = loader.load()
if transcript_format == TranscriptFormat.TEXT and len(transcripts) > 0:
return Data(data={"transcript": transcripts[0].page_content})
return [Data(data={"content": doc.page_content, "metadata": doc.metadata}) for doc in transcripts]
except Exception as exc:
msg = f"Failed to get YouTube transcripts: {exc!s}"
raise ToolException(msg) from exc

def build_youtube_tool(self) -> Tool:
"""Method to build the transcripts tool.

Returns:
Tool: A structured tool that uses the transcripts method.

Raises:
RuntimeError: If tool creation fails.
"""
try:
return StructuredTool.from_function(
name="youtube_transcripts",
description="Get transcripts from YouTube videos.",
func=self.youtube_transcripts,
args_schema=YoutubeApiSchema,
)

except Exception as exc:
msg = f"Failed to build the YouTube transcripts tool: {exc!s}"
raise RuntimeError(msg) from exc
9 changes: 9 additions & 0 deletions src/frontend/src/icons/Youtube/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import React, { forwardRef } from "react";
import YouTubeIcon from "./youtube";

export const YouTubeSvgIcon = forwardRef<
SVGSVGElement,
React.PropsWithChildren<{}>
>((props, ref) => {
return <YouTubeIcon ref={ref} {...props} />;
});
Loading