langflow-base-nightly 1.7.0.dev55__py3-none-any.whl → 1.7.0.dev58__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- langflow/api/v2/files.py +6 -6
- langflow/initial_setup/starter_projects/Basic Prompt Chaining.json +31 -1088
- langflow/initial_setup/starter_projects/Basic Prompting.json +196 -135
- langflow/initial_setup/starter_projects/Blog Writer.json +141 -84
- langflow/initial_setup/starter_projects/Custom Component Generator.json +133 -73
- langflow/initial_setup/starter_projects/Document Q&A.json +136 -81
- langflow/initial_setup/starter_projects/Financial Report Parser.json +12 -365
- langflow/initial_setup/starter_projects/Hybrid Search RAG.json +19 -729
- langflow/initial_setup/starter_projects/Image Sentiment Analysis.json +688 -733
- langflow/initial_setup/starter_projects/Instagram Copywriter.json +322 -203
- langflow/initial_setup/starter_projects/Invoice Summarizer.json +47 -21
- langflow/initial_setup/starter_projects/Market Research.json +63 -394
- langflow/initial_setup/starter_projects/Meeting Summary.json +266 -168
- langflow/initial_setup/starter_projects/Memory Chatbot.json +136 -81
- langflow/initial_setup/starter_projects/News Aggregator.json +49 -24
- langflow/initial_setup/starter_projects/Nvidia Remix.json +48 -23
- langflow/initial_setup/starter_projects/Pok/303/251dex Agent.json" +49 -23
- langflow/initial_setup/starter_projects/Portfolio Website Code Generator.json +113 -418
- langflow/initial_setup/starter_projects/Price Deal Finder.json +48 -22
- langflow/initial_setup/starter_projects/Research Agent.json +319 -181
- langflow/initial_setup/starter_projects/Research Translation Loop.json +636 -615
- langflow/initial_setup/starter_projects/SEO Keyword Generator.json +145 -89
- langflow/initial_setup/starter_projects/SaaS Pricing.json +48 -22
- langflow/initial_setup/starter_projects/Search agent.json +47 -21
- langflow/initial_setup/starter_projects/Sequential Tasks Agents.json +147 -54
- langflow/initial_setup/starter_projects/Simple Agent.json +47 -16
- langflow/initial_setup/starter_projects/Social Media Agent.json +47 -16
- langflow/initial_setup/starter_projects/Text Sentiment Analysis.json +398 -251
- langflow/initial_setup/starter_projects/Travel Planning Agents.json +146 -53
- langflow/initial_setup/starter_projects/Twitter Thread Generator.json +137 -81
- langflow/initial_setup/starter_projects/Vector Store RAG.json +133 -82
- langflow/initial_setup/starter_projects/Youtube Analysis.json +182 -106
- langflow/services/storage/local.py +13 -8
- langflow/services/storage/s3.py +0 -6
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.0.dev58.dist-info}/METADATA +2 -2
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.0.dev58.dist-info}/RECORD +38 -38
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.0.dev58.dist-info}/WHEEL +0 -0
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.0.dev58.dist-info}/entry_points.txt +0 -0
|
@@ -2,66 +2,6 @@
|
|
|
2
2
|
"data": {
|
|
3
3
|
"edges": [
|
|
4
4
|
{
|
|
5
|
-
"animated": false,
|
|
6
|
-
"className": "",
|
|
7
|
-
"data": {
|
|
8
|
-
"sourceHandle": {
|
|
9
|
-
"dataType": "LanguageModelComponent",
|
|
10
|
-
"id": "LanguageModelComponent-kPnuV",
|
|
11
|
-
"name": "text_output",
|
|
12
|
-
"output_types": [
|
|
13
|
-
"Message"
|
|
14
|
-
]
|
|
15
|
-
},
|
|
16
|
-
"targetHandle": {
|
|
17
|
-
"fieldName": "input_value",
|
|
18
|
-
"id": "LanguageModelComponent-k0SIV",
|
|
19
|
-
"inputTypes": [
|
|
20
|
-
"Message"
|
|
21
|
-
],
|
|
22
|
-
"type": "str"
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"id": "reactflow__edge-LanguageModelComponent-kPnuV{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-kPnuVœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-k0SIV{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-k0SIVœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
|
|
26
|
-
"selected": false,
|
|
27
|
-
"source": "LanguageModelComponent-kPnuV",
|
|
28
|
-
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-kPnuVœ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
|
|
29
|
-
"target": "LanguageModelComponent-k0SIV",
|
|
30
|
-
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œLanguageModelComponent-k0SIVœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"animated": false,
|
|
34
|
-
"className": "",
|
|
35
|
-
"data": {
|
|
36
|
-
"sourceHandle": {
|
|
37
|
-
"dataType": "LanguageModelComponent",
|
|
38
|
-
"id": "LanguageModelComponent-k0SIV",
|
|
39
|
-
"name": "text_output",
|
|
40
|
-
"output_types": [
|
|
41
|
-
"Message"
|
|
42
|
-
]
|
|
43
|
-
},
|
|
44
|
-
"targetHandle": {
|
|
45
|
-
"fieldName": "input_value",
|
|
46
|
-
"id": "ChatOutput-mc2Rz",
|
|
47
|
-
"inputTypes": [
|
|
48
|
-
"Data",
|
|
49
|
-
"DataFrame",
|
|
50
|
-
"Message"
|
|
51
|
-
],
|
|
52
|
-
"type": "str"
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
"id": "reactflow__edge-LanguageModelComponent-k0SIV{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-k0SIVœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-ChatOutput-mc2Rz{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-mc2Rzœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œstrœ}",
|
|
56
|
-
"selected": false,
|
|
57
|
-
"source": "LanguageModelComponent-k0SIV",
|
|
58
|
-
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-k0SIVœ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
|
|
59
|
-
"target": "ChatOutput-mc2Rz",
|
|
60
|
-
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-mc2Rzœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œstrœ}"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"animated": false,
|
|
64
|
-
"className": "",
|
|
65
5
|
"data": {
|
|
66
6
|
"sourceHandle": {
|
|
67
7
|
"dataType": "ChatInput",
|
|
@@ -72,52 +12,48 @@
|
|
|
72
12
|
]
|
|
73
13
|
},
|
|
74
14
|
"targetHandle": {
|
|
75
|
-
"fieldName": "
|
|
76
|
-
"id": "
|
|
15
|
+
"fieldName": "tool_placeholder",
|
|
16
|
+
"id": "Prompt-RcCgD",
|
|
77
17
|
"inputTypes": [
|
|
78
18
|
"Message"
|
|
79
19
|
],
|
|
80
20
|
"type": "str"
|
|
81
21
|
}
|
|
82
22
|
},
|
|
83
|
-
"id": "reactflow__edge-ChatInput-
|
|
84
|
-
"selected": false,
|
|
23
|
+
"id": "reactflow__edge-ChatInput-B7vXKmessage-Prompt-RcCgDtool_placeholder",
|
|
85
24
|
"source": "ChatInput-B7vXK",
|
|
86
25
|
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-B7vXKœ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
|
|
87
|
-
"target": "
|
|
88
|
-
"targetHandle": "{œfieldNameœ: œ
|
|
26
|
+
"target": "Prompt-RcCgD",
|
|
27
|
+
"targetHandle": "{œfieldNameœ: œtool_placeholderœ, œidœ: œPrompt-RcCgDœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}",
|
|
28
|
+
"type": "default"
|
|
89
29
|
},
|
|
90
30
|
{
|
|
91
|
-
"animated": false,
|
|
92
|
-
"className": "",
|
|
93
31
|
"data": {
|
|
94
32
|
"sourceHandle": {
|
|
95
|
-
"dataType": "
|
|
96
|
-
"id": "
|
|
97
|
-
"name": "
|
|
33
|
+
"dataType": "Prompt",
|
|
34
|
+
"id": "Prompt-RcCgD",
|
|
35
|
+
"name": "prompt",
|
|
98
36
|
"output_types": [
|
|
99
37
|
"Message"
|
|
100
38
|
]
|
|
101
39
|
},
|
|
102
40
|
"targetHandle": {
|
|
103
|
-
"fieldName": "
|
|
104
|
-
"id": "
|
|
41
|
+
"fieldName": "tool_placeholder",
|
|
42
|
+
"id": "Prompt-gxyFu",
|
|
105
43
|
"inputTypes": [
|
|
106
44
|
"Message"
|
|
107
45
|
],
|
|
108
46
|
"type": "str"
|
|
109
47
|
}
|
|
110
48
|
},
|
|
111
|
-
"id": "reactflow__edge-
|
|
112
|
-
"
|
|
113
|
-
"
|
|
114
|
-
"
|
|
115
|
-
"
|
|
116
|
-
"
|
|
49
|
+
"id": "reactflow__edge-Prompt-RcCgDprompt-Prompt-gxyFutool_placeholder",
|
|
50
|
+
"source": "Prompt-RcCgD",
|
|
51
|
+
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-RcCgDœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
|
|
52
|
+
"target": "Prompt-gxyFu",
|
|
53
|
+
"targetHandle": "{œfieldNameœ: œtool_placeholderœ, œidœ: œPrompt-gxyFuœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}",
|
|
54
|
+
"type": "default"
|
|
117
55
|
},
|
|
118
56
|
{
|
|
119
|
-
"animated": false,
|
|
120
|
-
"className": "",
|
|
121
57
|
"data": {
|
|
122
58
|
"sourceHandle": {
|
|
123
59
|
"dataType": "Prompt",
|
|
@@ -128,24 +64,22 @@
|
|
|
128
64
|
]
|
|
129
65
|
},
|
|
130
66
|
"targetHandle": {
|
|
131
|
-
"fieldName": "
|
|
132
|
-
"id": "
|
|
67
|
+
"fieldName": "tool_placeholder",
|
|
68
|
+
"id": "Prompt-7PuDH",
|
|
133
69
|
"inputTypes": [
|
|
134
70
|
"Message"
|
|
135
71
|
],
|
|
136
72
|
"type": "str"
|
|
137
73
|
}
|
|
138
74
|
},
|
|
139
|
-
"id": "
|
|
140
|
-
"selected": false,
|
|
75
|
+
"id": "reactflow__edge-Prompt-gxyFuprompt-Prompt-7PuDHtool_placeholder",
|
|
141
76
|
"source": "Prompt-gxyFu",
|
|
142
77
|
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-gxyFuœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
|
|
143
|
-
"target": "
|
|
144
|
-
"targetHandle": "{œfieldNameœ: œ
|
|
78
|
+
"target": "Prompt-7PuDH",
|
|
79
|
+
"targetHandle": "{œfieldNameœ: œtool_placeholderœ, œidœ: œPrompt-7PuDHœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}",
|
|
80
|
+
"type": "default"
|
|
145
81
|
},
|
|
146
82
|
{
|
|
147
|
-
"animated": false,
|
|
148
|
-
"className": "",
|
|
149
83
|
"data": {
|
|
150
84
|
"sourceHandle": {
|
|
151
85
|
"dataType": "Prompt",
|
|
@@ -156,48 +90,22 @@
|
|
|
156
90
|
]
|
|
157
91
|
},
|
|
158
92
|
"targetHandle": {
|
|
159
|
-
"fieldName": "
|
|
160
|
-
"id": "
|
|
93
|
+
"fieldName": "input_value",
|
|
94
|
+
"id": "ChatOutput-mc2Rz",
|
|
161
95
|
"inputTypes": [
|
|
96
|
+
"Data",
|
|
97
|
+
"DataFrame",
|
|
162
98
|
"Message"
|
|
163
99
|
],
|
|
164
100
|
"type": "str"
|
|
165
101
|
}
|
|
166
102
|
},
|
|
167
|
-
"id": "
|
|
168
|
-
"selected": false,
|
|
103
|
+
"id": "reactflow__edge-Prompt-7PuDHprompt-ChatOutput-mc2Rzinput_value",
|
|
169
104
|
"source": "Prompt-7PuDH",
|
|
170
105
|
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-7PuDHœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
|
|
171
|
-
"target": "
|
|
172
|
-
"targetHandle": "{œfieldNameœ: œ
|
|
173
|
-
|
|
174
|
-
{
|
|
175
|
-
"animated": false,
|
|
176
|
-
"className": "",
|
|
177
|
-
"data": {
|
|
178
|
-
"sourceHandle": {
|
|
179
|
-
"dataType": "Prompt",
|
|
180
|
-
"id": "Prompt-RcCgD",
|
|
181
|
-
"name": "prompt",
|
|
182
|
-
"output_types": [
|
|
183
|
-
"Message"
|
|
184
|
-
]
|
|
185
|
-
},
|
|
186
|
-
"targetHandle": {
|
|
187
|
-
"fieldName": "system_message",
|
|
188
|
-
"id": "LanguageModelComponent-sPFGT",
|
|
189
|
-
"inputTypes": [
|
|
190
|
-
"Message"
|
|
191
|
-
],
|
|
192
|
-
"type": "str"
|
|
193
|
-
}
|
|
194
|
-
},
|
|
195
|
-
"id": "xy-edge__Prompt-RcCgD{œdataTypeœ:œPromptœ,œidœ:œPrompt-RcCgDœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-sPFGT{œfieldNameœ:œsystem_messageœ,œidœ:œLanguageModelComponent-sPFGTœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
|
|
196
|
-
"selected": false,
|
|
197
|
-
"source": "Prompt-RcCgD",
|
|
198
|
-
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-RcCgDœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
|
|
199
|
-
"target": "LanguageModelComponent-sPFGT",
|
|
200
|
-
"targetHandle": "{œfieldNameœ: œsystem_messageœ, œidœ: œLanguageModelComponent-sPFGTœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
|
|
106
|
+
"target": "ChatOutput-mc2Rz",
|
|
107
|
+
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-mc2Rzœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œstrœ}",
|
|
108
|
+
"type": "default"
|
|
201
109
|
}
|
|
202
110
|
],
|
|
203
111
|
"nodes": [
|
|
@@ -1129,971 +1037,6 @@
|
|
|
1129
1037
|
"selected": false,
|
|
1130
1038
|
"type": "genericNode"
|
|
1131
1039
|
},
|
|
1132
|
-
{
|
|
1133
|
-
"data": {
|
|
1134
|
-
"id": "LanguageModelComponent-kPnuV",
|
|
1135
|
-
"node": {
|
|
1136
|
-
"base_classes": [
|
|
1137
|
-
"LanguageModel",
|
|
1138
|
-
"Message"
|
|
1139
|
-
],
|
|
1140
|
-
"beta": false,
|
|
1141
|
-
"conditional_paths": [],
|
|
1142
|
-
"custom_fields": {},
|
|
1143
|
-
"description": "Runs a language model given a specified provider.",
|
|
1144
|
-
"display_name": "Language Model",
|
|
1145
|
-
"documentation": "",
|
|
1146
|
-
"edited": false,
|
|
1147
|
-
"field_order": [
|
|
1148
|
-
"provider",
|
|
1149
|
-
"model_name",
|
|
1150
|
-
"api_key",
|
|
1151
|
-
"input_value",
|
|
1152
|
-
"system_message",
|
|
1153
|
-
"stream",
|
|
1154
|
-
"temperature"
|
|
1155
|
-
],
|
|
1156
|
-
"frozen": false,
|
|
1157
|
-
"icon": "brain-circuit",
|
|
1158
|
-
"legacy": false,
|
|
1159
|
-
"lf_version": "1.5.0",
|
|
1160
|
-
"metadata": {
|
|
1161
|
-
"code_hash": "bb5f8714781b",
|
|
1162
|
-
"dependencies": {
|
|
1163
|
-
"dependencies": [
|
|
1164
|
-
{
|
|
1165
|
-
"name": "langchain_anthropic",
|
|
1166
|
-
"version": "0.3.14"
|
|
1167
|
-
},
|
|
1168
|
-
{
|
|
1169
|
-
"name": "langchain_google_genai",
|
|
1170
|
-
"version": "2.0.6"
|
|
1171
|
-
},
|
|
1172
|
-
{
|
|
1173
|
-
"name": "langchain_openai",
|
|
1174
|
-
"version": "0.3.23"
|
|
1175
|
-
},
|
|
1176
|
-
{
|
|
1177
|
-
"name": "lfx",
|
|
1178
|
-
"version": null
|
|
1179
|
-
}
|
|
1180
|
-
],
|
|
1181
|
-
"total_dependencies": 4
|
|
1182
|
-
},
|
|
1183
|
-
"keywords": [
|
|
1184
|
-
"model",
|
|
1185
|
-
"llm",
|
|
1186
|
-
"language model",
|
|
1187
|
-
"large language model"
|
|
1188
|
-
],
|
|
1189
|
-
"module": "lfx.components.models.language_model.LanguageModelComponent"
|
|
1190
|
-
},
|
|
1191
|
-
"minimized": false,
|
|
1192
|
-
"output_types": [],
|
|
1193
|
-
"outputs": [
|
|
1194
|
-
{
|
|
1195
|
-
"allows_loop": false,
|
|
1196
|
-
"cache": true,
|
|
1197
|
-
"display_name": "Model Response",
|
|
1198
|
-
"group_outputs": false,
|
|
1199
|
-
"method": "text_response",
|
|
1200
|
-
"name": "text_output",
|
|
1201
|
-
"selected": "Message",
|
|
1202
|
-
"tool_mode": true,
|
|
1203
|
-
"types": [
|
|
1204
|
-
"Message"
|
|
1205
|
-
],
|
|
1206
|
-
"value": "__UNDEFINED__"
|
|
1207
|
-
},
|
|
1208
|
-
{
|
|
1209
|
-
"allows_loop": false,
|
|
1210
|
-
"cache": true,
|
|
1211
|
-
"display_name": "Language Model",
|
|
1212
|
-
"group_outputs": false,
|
|
1213
|
-
"method": "build_model",
|
|
1214
|
-
"name": "model_output",
|
|
1215
|
-
"selected": "LanguageModel",
|
|
1216
|
-
"tool_mode": true,
|
|
1217
|
-
"types": [
|
|
1218
|
-
"LanguageModel"
|
|
1219
|
-
],
|
|
1220
|
-
"value": "__UNDEFINED__"
|
|
1221
|
-
}
|
|
1222
|
-
],
|
|
1223
|
-
"pinned": false,
|
|
1224
|
-
"priority": 0,
|
|
1225
|
-
"template": {
|
|
1226
|
-
"_type": "Component",
|
|
1227
|
-
"api_key": {
|
|
1228
|
-
"_input_type": "SecretStrInput",
|
|
1229
|
-
"advanced": false,
|
|
1230
|
-
"display_name": "OpenAI API Key",
|
|
1231
|
-
"dynamic": false,
|
|
1232
|
-
"info": "Model Provider API key",
|
|
1233
|
-
"input_types": [],
|
|
1234
|
-
"load_from_db": true,
|
|
1235
|
-
"name": "api_key",
|
|
1236
|
-
"password": true,
|
|
1237
|
-
"placeholder": "",
|
|
1238
|
-
"real_time_refresh": true,
|
|
1239
|
-
"required": false,
|
|
1240
|
-
"show": true,
|
|
1241
|
-
"title_case": false,
|
|
1242
|
-
"type": "str",
|
|
1243
|
-
"value": "OPENAI_API_KEY"
|
|
1244
|
-
},
|
|
1245
|
-
"code": {
|
|
1246
|
-
"advanced": true,
|
|
1247
|
-
"dynamic": true,
|
|
1248
|
-
"fileTypes": [],
|
|
1249
|
-
"file_path": "",
|
|
1250
|
-
"info": "",
|
|
1251
|
-
"list": false,
|
|
1252
|
-
"load_from_db": false,
|
|
1253
|
-
"multiline": true,
|
|
1254
|
-
"name": "code",
|
|
1255
|
-
"password": false,
|
|
1256
|
-
"placeholder": "",
|
|
1257
|
-
"required": true,
|
|
1258
|
-
"show": true,
|
|
1259
|
-
"title_case": false,
|
|
1260
|
-
"type": "code",
|
|
1261
|
-
"value": "from lfx.base.models.model import LCModelComponent\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.base.models.watsonx_constants import IBM_WATSONX_URLS\nfrom lfx.field_typing import LanguageModel\nfrom lfx.field_typing.range_spec import RangeSpec\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, StrInput\nfrom lfx.io import MessageInput, ModelInput, MultilineInput, SecretStrInput, SliderInput\n\nDEFAULT_OLLAMA_URL = \"http://localhost:11434\"\n\n\nclass LanguageModelComponent(LCModelComponent):\n display_name = \"Language Model\"\n description = \"Runs a language model given a specified provider.\"\n documentation: str = \"https://docs.langflow.org/components-models\"\n icon = \"brain-circuit\"\n category = \"models\"\n priority = 0 # Set priority to 0 to make it appear first\n\n inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n required=False,\n show=True,\n real_time_refresh=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"base_url_ibm_watsonx\",\n display_name=\"watsonx API Endpoint\",\n info=\"The base URL of the API (IBM watsonx.ai only)\",\n options=IBM_WATSONX_URLS,\n value=IBM_WATSONX_URLS[0],\n show=False,\n real_time_refresh=True,\n ),\n StrInput(\n name=\"project_id\",\n display_name=\"watsonx Project ID\",\n info=\"The project ID associated with the foundation model (IBM watsonx.ai only)\",\n show=False,\n required=False,\n ),\n MessageInput(\n name=\"ollama_base_url\",\n display_name=\"Ollama API URL\",\n info=f\"Endpoint of the Ollama API (Ollama only). Defaults to {DEFAULT_OLLAMA_URL}\",\n value=DEFAULT_OLLAMA_URL,\n show=False,\n real_time_refresh=True,\n load_from_db=True,\n ),\n MessageInput(\n name=\"input_value\",\n display_name=\"Input\",\n info=\"The input text to send to the model\",\n ),\n MultilineInput(\n name=\"system_message\",\n display_name=\"System Message\",\n info=\"A system message that helps set the behavior of the assistant\",\n advanced=False,\n ),\n BoolInput(\n name=\"stream\",\n display_name=\"Stream\",\n info=\"Whether to stream the response\",\n value=False,\n advanced=True,\n ),\n SliderInput(\n name=\"temperature\",\n display_name=\"Temperature\",\n value=0.1,\n info=\"Controls randomness in responses\",\n range_spec=RangeSpec(min=0, max=1, step=0.01),\n advanced=True,\n ),\n ]\n\n def build_model(self) -> LanguageModel:\n return get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n temperature=self.temperature,\n stream=self.stream,\n )\n\n def update_build_config(self, build_config: dict, field_value: str, field_name: str | None = None):\n \"\"\"Dynamically update build config with user-filtered model options.\"\"\"\n return update_model_options_in_build_config(\n component=self,\n build_config=build_config,\n cache_key_prefix=\"language_model_options\",\n get_options_func=get_language_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n"
|
|
1262
|
-
},
|
|
1263
|
-
"input_value": {
|
|
1264
|
-
"_input_type": "MessageInput",
|
|
1265
|
-
"advanced": false,
|
|
1266
|
-
"display_name": "Input",
|
|
1267
|
-
"dynamic": false,
|
|
1268
|
-
"info": "The input text to send to the model",
|
|
1269
|
-
"input_types": [
|
|
1270
|
-
"Message"
|
|
1271
|
-
],
|
|
1272
|
-
"list": false,
|
|
1273
|
-
"list_add_label": "Add More",
|
|
1274
|
-
"load_from_db": false,
|
|
1275
|
-
"name": "input_value",
|
|
1276
|
-
"placeholder": "",
|
|
1277
|
-
"required": false,
|
|
1278
|
-
"show": true,
|
|
1279
|
-
"title_case": false,
|
|
1280
|
-
"tool_mode": false,
|
|
1281
|
-
"trace_as_input": true,
|
|
1282
|
-
"trace_as_metadata": true,
|
|
1283
|
-
"type": "str",
|
|
1284
|
-
"value": ""
|
|
1285
|
-
},
|
|
1286
|
-
"model_name": {
|
|
1287
|
-
"_input_type": "DropdownInput",
|
|
1288
|
-
"advanced": false,
|
|
1289
|
-
"combobox": false,
|
|
1290
|
-
"dialog_inputs": {},
|
|
1291
|
-
"display_name": "Model Name",
|
|
1292
|
-
"dynamic": false,
|
|
1293
|
-
"info": "Select the model to use",
|
|
1294
|
-
"name": "model_name",
|
|
1295
|
-
"options": [
|
|
1296
|
-
"gpt-4o-mini",
|
|
1297
|
-
"gpt-4o",
|
|
1298
|
-
"gpt-4.1",
|
|
1299
|
-
"gpt-4.1-mini",
|
|
1300
|
-
"gpt-4.1-nano",
|
|
1301
|
-
"gpt-4-turbo",
|
|
1302
|
-
"gpt-4-turbo-preview",
|
|
1303
|
-
"gpt-4",
|
|
1304
|
-
"gpt-3.5-turbo",
|
|
1305
|
-
"gpt-5",
|
|
1306
|
-
"gpt-5-mini",
|
|
1307
|
-
"gpt-5-nano",
|
|
1308
|
-
"gpt-5-chat-latest",
|
|
1309
|
-
"o1",
|
|
1310
|
-
"o3-mini",
|
|
1311
|
-
"o3",
|
|
1312
|
-
"o3-pro",
|
|
1313
|
-
"o4-mini",
|
|
1314
|
-
"o4-mini-high"
|
|
1315
|
-
],
|
|
1316
|
-
"options_metadata": [],
|
|
1317
|
-
"placeholder": "",
|
|
1318
|
-
"required": false,
|
|
1319
|
-
"show": true,
|
|
1320
|
-
"title_case": false,
|
|
1321
|
-
"toggle": false,
|
|
1322
|
-
"tool_mode": false,
|
|
1323
|
-
"trace_as_metadata": true,
|
|
1324
|
-
"type": "str",
|
|
1325
|
-
"value": "gpt-4o-mini"
|
|
1326
|
-
},
|
|
1327
|
-
"provider": {
|
|
1328
|
-
"_input_type": "DropdownInput",
|
|
1329
|
-
"advanced": false,
|
|
1330
|
-
"combobox": false,
|
|
1331
|
-
"dialog_inputs": {},
|
|
1332
|
-
"display_name": "Model Provider",
|
|
1333
|
-
"dynamic": false,
|
|
1334
|
-
"info": "Select the model provider",
|
|
1335
|
-
"name": "provider",
|
|
1336
|
-
"options": [
|
|
1337
|
-
"OpenAI",
|
|
1338
|
-
"Anthropic",
|
|
1339
|
-
"Google"
|
|
1340
|
-
],
|
|
1341
|
-
"options_metadata": [
|
|
1342
|
-
{
|
|
1343
|
-
"icon": "OpenAI"
|
|
1344
|
-
},
|
|
1345
|
-
{
|
|
1346
|
-
"icon": "Anthropic"
|
|
1347
|
-
},
|
|
1348
|
-
{
|
|
1349
|
-
"icon": "GoogleGenerativeAI"
|
|
1350
|
-
}
|
|
1351
|
-
],
|
|
1352
|
-
"placeholder": "",
|
|
1353
|
-
"real_time_refresh": true,
|
|
1354
|
-
"required": false,
|
|
1355
|
-
"show": true,
|
|
1356
|
-
"title_case": false,
|
|
1357
|
-
"toggle": false,
|
|
1358
|
-
"tool_mode": false,
|
|
1359
|
-
"trace_as_metadata": true,
|
|
1360
|
-
"type": "str",
|
|
1361
|
-
"value": "OpenAI"
|
|
1362
|
-
},
|
|
1363
|
-
"stream": {
|
|
1364
|
-
"_input_type": "BoolInput",
|
|
1365
|
-
"advanced": true,
|
|
1366
|
-
"display_name": "Stream",
|
|
1367
|
-
"dynamic": false,
|
|
1368
|
-
"info": "Whether to stream the response",
|
|
1369
|
-
"list": false,
|
|
1370
|
-
"list_add_label": "Add More",
|
|
1371
|
-
"name": "stream",
|
|
1372
|
-
"placeholder": "",
|
|
1373
|
-
"required": false,
|
|
1374
|
-
"show": true,
|
|
1375
|
-
"title_case": false,
|
|
1376
|
-
"tool_mode": false,
|
|
1377
|
-
"trace_as_metadata": true,
|
|
1378
|
-
"type": "bool",
|
|
1379
|
-
"value": false
|
|
1380
|
-
},
|
|
1381
|
-
"system_message": {
|
|
1382
|
-
"_input_type": "MultilineInput",
|
|
1383
|
-
"advanced": false,
|
|
1384
|
-
"copy_field": false,
|
|
1385
|
-
"display_name": "System Message",
|
|
1386
|
-
"dynamic": false,
|
|
1387
|
-
"info": "A system message that helps set the behavior of the assistant",
|
|
1388
|
-
"input_types": [
|
|
1389
|
-
"Message"
|
|
1390
|
-
],
|
|
1391
|
-
"list": false,
|
|
1392
|
-
"list_add_label": "Add More",
|
|
1393
|
-
"load_from_db": false,
|
|
1394
|
-
"multiline": true,
|
|
1395
|
-
"name": "system_message",
|
|
1396
|
-
"placeholder": "",
|
|
1397
|
-
"required": false,
|
|
1398
|
-
"show": true,
|
|
1399
|
-
"title_case": false,
|
|
1400
|
-
"tool_mode": false,
|
|
1401
|
-
"trace_as_input": true,
|
|
1402
|
-
"trace_as_metadata": true,
|
|
1403
|
-
"type": "str",
|
|
1404
|
-
"value": ""
|
|
1405
|
-
},
|
|
1406
|
-
"temperature": {
|
|
1407
|
-
"_input_type": "SliderInput",
|
|
1408
|
-
"advanced": true,
|
|
1409
|
-
"display_name": "Temperature",
|
|
1410
|
-
"dynamic": false,
|
|
1411
|
-
"info": "Controls randomness in responses",
|
|
1412
|
-
"max_label": "",
|
|
1413
|
-
"max_label_icon": "",
|
|
1414
|
-
"min_label": "",
|
|
1415
|
-
"min_label_icon": "",
|
|
1416
|
-
"name": "temperature",
|
|
1417
|
-
"placeholder": "",
|
|
1418
|
-
"range_spec": {
|
|
1419
|
-
"max": 1,
|
|
1420
|
-
"min": 0,
|
|
1421
|
-
"step": 0.01,
|
|
1422
|
-
"step_type": "float"
|
|
1423
|
-
},
|
|
1424
|
-
"required": false,
|
|
1425
|
-
"show": true,
|
|
1426
|
-
"slider_buttons": false,
|
|
1427
|
-
"slider_buttons_options": [],
|
|
1428
|
-
"slider_input": false,
|
|
1429
|
-
"title_case": false,
|
|
1430
|
-
"tool_mode": false,
|
|
1431
|
-
"type": "slider",
|
|
1432
|
-
"value": 0.1
|
|
1433
|
-
}
|
|
1434
|
-
},
|
|
1435
|
-
"tool_mode": false
|
|
1436
|
-
},
|
|
1437
|
-
"selected_output": "text_output",
|
|
1438
|
-
"showNode": true,
|
|
1439
|
-
"type": "LanguageModelComponent"
|
|
1440
|
-
},
|
|
1441
|
-
"dragging": false,
|
|
1442
|
-
"id": "LanguageModelComponent-kPnuV",
|
|
1443
|
-
"measured": {
|
|
1444
|
-
"height": 534,
|
|
1445
|
-
"width": 320
|
|
1446
|
-
},
|
|
1447
|
-
"position": {
|
|
1448
|
-
"x": 2401.6016531029886,
|
|
1449
|
-
"y": 690.864550385179
|
|
1450
|
-
},
|
|
1451
|
-
"selected": false,
|
|
1452
|
-
"type": "genericNode"
|
|
1453
|
-
},
|
|
1454
|
-
{
|
|
1455
|
-
"data": {
|
|
1456
|
-
"id": "LanguageModelComponent-k0SIV",
|
|
1457
|
-
"node": {
|
|
1458
|
-
"base_classes": [
|
|
1459
|
-
"LanguageModel",
|
|
1460
|
-
"Message"
|
|
1461
|
-
],
|
|
1462
|
-
"beta": false,
|
|
1463
|
-
"conditional_paths": [],
|
|
1464
|
-
"custom_fields": {},
|
|
1465
|
-
"description": "Runs a language model given a specified provider.",
|
|
1466
|
-
"display_name": "Language Model",
|
|
1467
|
-
"documentation": "",
|
|
1468
|
-
"edited": false,
|
|
1469
|
-
"field_order": [
|
|
1470
|
-
"provider",
|
|
1471
|
-
"model_name",
|
|
1472
|
-
"api_key",
|
|
1473
|
-
"input_value",
|
|
1474
|
-
"system_message",
|
|
1475
|
-
"stream",
|
|
1476
|
-
"temperature"
|
|
1477
|
-
],
|
|
1478
|
-
"frozen": false,
|
|
1479
|
-
"icon": "brain-circuit",
|
|
1480
|
-
"legacy": false,
|
|
1481
|
-
"lf_version": "1.5.0",
|
|
1482
|
-
"metadata": {
|
|
1483
|
-
"code_hash": "bb5f8714781b",
|
|
1484
|
-
"dependencies": {
|
|
1485
|
-
"dependencies": [
|
|
1486
|
-
{
|
|
1487
|
-
"name": "langchain_anthropic",
|
|
1488
|
-
"version": "0.3.14"
|
|
1489
|
-
},
|
|
1490
|
-
{
|
|
1491
|
-
"name": "langchain_google_genai",
|
|
1492
|
-
"version": "2.0.6"
|
|
1493
|
-
},
|
|
1494
|
-
{
|
|
1495
|
-
"name": "langchain_openai",
|
|
1496
|
-
"version": "0.3.23"
|
|
1497
|
-
},
|
|
1498
|
-
{
|
|
1499
|
-
"name": "lfx",
|
|
1500
|
-
"version": null
|
|
1501
|
-
}
|
|
1502
|
-
],
|
|
1503
|
-
"total_dependencies": 4
|
|
1504
|
-
},
|
|
1505
|
-
"keywords": [
|
|
1506
|
-
"model",
|
|
1507
|
-
"llm",
|
|
1508
|
-
"language model",
|
|
1509
|
-
"large language model"
|
|
1510
|
-
],
|
|
1511
|
-
"module": "lfx.components.models.language_model.LanguageModelComponent"
|
|
1512
|
-
},
|
|
1513
|
-
"minimized": false,
|
|
1514
|
-
"output_types": [],
|
|
1515
|
-
"outputs": [
|
|
1516
|
-
{
|
|
1517
|
-
"allows_loop": false,
|
|
1518
|
-
"cache": true,
|
|
1519
|
-
"display_name": "Model Response",
|
|
1520
|
-
"group_outputs": false,
|
|
1521
|
-
"method": "text_response",
|
|
1522
|
-
"name": "text_output",
|
|
1523
|
-
"selected": "Message",
|
|
1524
|
-
"tool_mode": true,
|
|
1525
|
-
"types": [
|
|
1526
|
-
"Message"
|
|
1527
|
-
],
|
|
1528
|
-
"value": "__UNDEFINED__"
|
|
1529
|
-
},
|
|
1530
|
-
{
|
|
1531
|
-
"allows_loop": false,
|
|
1532
|
-
"cache": true,
|
|
1533
|
-
"display_name": "Language Model",
|
|
1534
|
-
"group_outputs": false,
|
|
1535
|
-
"method": "build_model",
|
|
1536
|
-
"name": "model_output",
|
|
1537
|
-
"selected": "LanguageModel",
|
|
1538
|
-
"tool_mode": true,
|
|
1539
|
-
"types": [
|
|
1540
|
-
"LanguageModel"
|
|
1541
|
-
],
|
|
1542
|
-
"value": "__UNDEFINED__"
|
|
1543
|
-
}
|
|
1544
|
-
],
|
|
1545
|
-
"pinned": false,
|
|
1546
|
-
"priority": 0,
|
|
1547
|
-
"template": {
|
|
1548
|
-
"_type": "Component",
|
|
1549
|
-
"api_key": {
|
|
1550
|
-
"_input_type": "SecretStrInput",
|
|
1551
|
-
"advanced": false,
|
|
1552
|
-
"display_name": "OpenAI API Key",
|
|
1553
|
-
"dynamic": false,
|
|
1554
|
-
"info": "Model Provider API key",
|
|
1555
|
-
"input_types": [],
|
|
1556
|
-
"load_from_db": true,
|
|
1557
|
-
"name": "api_key",
|
|
1558
|
-
"password": true,
|
|
1559
|
-
"placeholder": "",
|
|
1560
|
-
"real_time_refresh": true,
|
|
1561
|
-
"required": false,
|
|
1562
|
-
"show": true,
|
|
1563
|
-
"title_case": false,
|
|
1564
|
-
"type": "str",
|
|
1565
|
-
"value": "OPENAI_API_KEY"
|
|
1566
|
-
},
|
|
1567
|
-
"code": {
|
|
1568
|
-
"advanced": true,
|
|
1569
|
-
"dynamic": true,
|
|
1570
|
-
"fileTypes": [],
|
|
1571
|
-
"file_path": "",
|
|
1572
|
-
"info": "",
|
|
1573
|
-
"list": false,
|
|
1574
|
-
"load_from_db": false,
|
|
1575
|
-
"multiline": true,
|
|
1576
|
-
"name": "code",
|
|
1577
|
-
"password": false,
|
|
1578
|
-
"placeholder": "",
|
|
1579
|
-
"required": true,
|
|
1580
|
-
"show": true,
|
|
1581
|
-
"title_case": false,
|
|
1582
|
-
"type": "code",
|
|
1583
|
-
"value": "from lfx.base.models.model import LCModelComponent\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.base.models.watsonx_constants import IBM_WATSONX_URLS\nfrom lfx.field_typing import LanguageModel\nfrom lfx.field_typing.range_spec import RangeSpec\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, StrInput\nfrom lfx.io import MessageInput, ModelInput, MultilineInput, SecretStrInput, SliderInput\n\nDEFAULT_OLLAMA_URL = \"http://localhost:11434\"\n\n\nclass LanguageModelComponent(LCModelComponent):\n display_name = \"Language Model\"\n description = \"Runs a language model given a specified provider.\"\n documentation: str = \"https://docs.langflow.org/components-models\"\n icon = \"brain-circuit\"\n category = \"models\"\n priority = 0 # Set priority to 0 to make it appear first\n\n inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n required=False,\n show=True,\n real_time_refresh=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"base_url_ibm_watsonx\",\n display_name=\"watsonx API Endpoint\",\n info=\"The base URL of the API (IBM watsonx.ai only)\",\n options=IBM_WATSONX_URLS,\n value=IBM_WATSONX_URLS[0],\n show=False,\n real_time_refresh=True,\n ),\n StrInput(\n name=\"project_id\",\n display_name=\"watsonx Project ID\",\n info=\"The project ID associated with the foundation model (IBM watsonx.ai only)\",\n show=False,\n required=False,\n ),\n MessageInput(\n name=\"ollama_base_url\",\n display_name=\"Ollama API URL\",\n info=f\"Endpoint of the Ollama API (Ollama only). Defaults to {DEFAULT_OLLAMA_URL}\",\n value=DEFAULT_OLLAMA_URL,\n show=False,\n real_time_refresh=True,\n load_from_db=True,\n ),\n MessageInput(\n name=\"input_value\",\n display_name=\"Input\",\n info=\"The input text to send to the model\",\n ),\n MultilineInput(\n name=\"system_message\",\n display_name=\"System Message\",\n info=\"A system message that helps set the behavior of the assistant\",\n advanced=False,\n ),\n BoolInput(\n name=\"stream\",\n display_name=\"Stream\",\n info=\"Whether to stream the response\",\n value=False,\n advanced=True,\n ),\n SliderInput(\n name=\"temperature\",\n display_name=\"Temperature\",\n value=0.1,\n info=\"Controls randomness in responses\",\n range_spec=RangeSpec(min=0, max=1, step=0.01),\n advanced=True,\n ),\n ]\n\n def build_model(self) -> LanguageModel:\n return get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n temperature=self.temperature,\n stream=self.stream,\n )\n\n def update_build_config(self, build_config: dict, field_value: str, field_name: str | None = None):\n \"\"\"Dynamically update build config with user-filtered model options.\"\"\"\n return update_model_options_in_build_config(\n component=self,\n build_config=build_config,\n cache_key_prefix=\"language_model_options\",\n get_options_func=get_language_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n"
|
|
1584
|
-
},
|
|
1585
|
-
"input_value": {
|
|
1586
|
-
"_input_type": "MessageInput",
|
|
1587
|
-
"advanced": false,
|
|
1588
|
-
"display_name": "Input",
|
|
1589
|
-
"dynamic": false,
|
|
1590
|
-
"info": "The input text to send to the model",
|
|
1591
|
-
"input_types": [
|
|
1592
|
-
"Message"
|
|
1593
|
-
],
|
|
1594
|
-
"list": false,
|
|
1595
|
-
"list_add_label": "Add More",
|
|
1596
|
-
"load_from_db": false,
|
|
1597
|
-
"name": "input_value",
|
|
1598
|
-
"placeholder": "",
|
|
1599
|
-
"required": false,
|
|
1600
|
-
"show": true,
|
|
1601
|
-
"title_case": false,
|
|
1602
|
-
"tool_mode": false,
|
|
1603
|
-
"trace_as_input": true,
|
|
1604
|
-
"trace_as_metadata": true,
|
|
1605
|
-
"type": "str",
|
|
1606
|
-
"value": ""
|
|
1607
|
-
},
|
|
1608
|
-
"model_name": {
|
|
1609
|
-
"_input_type": "DropdownInput",
|
|
1610
|
-
"advanced": false,
|
|
1611
|
-
"combobox": false,
|
|
1612
|
-
"dialog_inputs": {},
|
|
1613
|
-
"display_name": "Model Name",
|
|
1614
|
-
"dynamic": false,
|
|
1615
|
-
"info": "Select the model to use",
|
|
1616
|
-
"name": "model_name",
|
|
1617
|
-
"options": [
|
|
1618
|
-
"gpt-4o-mini",
|
|
1619
|
-
"gpt-4o",
|
|
1620
|
-
"gpt-4.1",
|
|
1621
|
-
"gpt-4.1-mini",
|
|
1622
|
-
"gpt-4.1-nano",
|
|
1623
|
-
"gpt-4-turbo",
|
|
1624
|
-
"gpt-4-turbo-preview",
|
|
1625
|
-
"gpt-4",
|
|
1626
|
-
"gpt-3.5-turbo",
|
|
1627
|
-
"gpt-5",
|
|
1628
|
-
"gpt-5-mini",
|
|
1629
|
-
"gpt-5-nano",
|
|
1630
|
-
"gpt-5-chat-latest",
|
|
1631
|
-
"o1",
|
|
1632
|
-
"o3-mini",
|
|
1633
|
-
"o3",
|
|
1634
|
-
"o3-pro",
|
|
1635
|
-
"o4-mini",
|
|
1636
|
-
"o4-mini-high"
|
|
1637
|
-
],
|
|
1638
|
-
"options_metadata": [],
|
|
1639
|
-
"placeholder": "",
|
|
1640
|
-
"required": false,
|
|
1641
|
-
"show": true,
|
|
1642
|
-
"title_case": false,
|
|
1643
|
-
"toggle": false,
|
|
1644
|
-
"tool_mode": false,
|
|
1645
|
-
"trace_as_metadata": true,
|
|
1646
|
-
"type": "str",
|
|
1647
|
-
"value": "gpt-4o-mini"
|
|
1648
|
-
},
|
|
1649
|
-
"provider": {
|
|
1650
|
-
"_input_type": "DropdownInput",
|
|
1651
|
-
"advanced": false,
|
|
1652
|
-
"combobox": false,
|
|
1653
|
-
"dialog_inputs": {},
|
|
1654
|
-
"display_name": "Model Provider",
|
|
1655
|
-
"dynamic": false,
|
|
1656
|
-
"info": "Select the model provider",
|
|
1657
|
-
"name": "provider",
|
|
1658
|
-
"options": [
|
|
1659
|
-
"OpenAI",
|
|
1660
|
-
"Anthropic",
|
|
1661
|
-
"Google"
|
|
1662
|
-
],
|
|
1663
|
-
"options_metadata": [
|
|
1664
|
-
{
|
|
1665
|
-
"icon": "OpenAI"
|
|
1666
|
-
},
|
|
1667
|
-
{
|
|
1668
|
-
"icon": "Anthropic"
|
|
1669
|
-
},
|
|
1670
|
-
{
|
|
1671
|
-
"icon": "GoogleGenerativeAI"
|
|
1672
|
-
}
|
|
1673
|
-
],
|
|
1674
|
-
"placeholder": "",
|
|
1675
|
-
"real_time_refresh": true,
|
|
1676
|
-
"required": false,
|
|
1677
|
-
"show": true,
|
|
1678
|
-
"title_case": false,
|
|
1679
|
-
"toggle": false,
|
|
1680
|
-
"tool_mode": false,
|
|
1681
|
-
"trace_as_metadata": true,
|
|
1682
|
-
"type": "str",
|
|
1683
|
-
"value": "OpenAI"
|
|
1684
|
-
},
|
|
1685
|
-
"stream": {
|
|
1686
|
-
"_input_type": "BoolInput",
|
|
1687
|
-
"advanced": true,
|
|
1688
|
-
"display_name": "Stream",
|
|
1689
|
-
"dynamic": false,
|
|
1690
|
-
"info": "Whether to stream the response",
|
|
1691
|
-
"list": false,
|
|
1692
|
-
"list_add_label": "Add More",
|
|
1693
|
-
"name": "stream",
|
|
1694
|
-
"placeholder": "",
|
|
1695
|
-
"required": false,
|
|
1696
|
-
"show": true,
|
|
1697
|
-
"title_case": false,
|
|
1698
|
-
"tool_mode": false,
|
|
1699
|
-
"trace_as_metadata": true,
|
|
1700
|
-
"type": "bool",
|
|
1701
|
-
"value": false
|
|
1702
|
-
},
|
|
1703
|
-
"system_message": {
|
|
1704
|
-
"_input_type": "MultilineInput",
|
|
1705
|
-
"advanced": false,
|
|
1706
|
-
"copy_field": false,
|
|
1707
|
-
"display_name": "System Message",
|
|
1708
|
-
"dynamic": false,
|
|
1709
|
-
"info": "A system message that helps set the behavior of the assistant",
|
|
1710
|
-
"input_types": [
|
|
1711
|
-
"Message"
|
|
1712
|
-
],
|
|
1713
|
-
"list": false,
|
|
1714
|
-
"list_add_label": "Add More",
|
|
1715
|
-
"load_from_db": false,
|
|
1716
|
-
"multiline": true,
|
|
1717
|
-
"name": "system_message",
|
|
1718
|
-
"placeholder": "",
|
|
1719
|
-
"required": false,
|
|
1720
|
-
"show": true,
|
|
1721
|
-
"title_case": false,
|
|
1722
|
-
"tool_mode": false,
|
|
1723
|
-
"trace_as_input": true,
|
|
1724
|
-
"trace_as_metadata": true,
|
|
1725
|
-
"type": "str",
|
|
1726
|
-
"value": ""
|
|
1727
|
-
},
|
|
1728
|
-
"temperature": {
|
|
1729
|
-
"_input_type": "SliderInput",
|
|
1730
|
-
"advanced": true,
|
|
1731
|
-
"display_name": "Temperature",
|
|
1732
|
-
"dynamic": false,
|
|
1733
|
-
"info": "Controls randomness in responses",
|
|
1734
|
-
"max_label": "",
|
|
1735
|
-
"max_label_icon": "",
|
|
1736
|
-
"min_label": "",
|
|
1737
|
-
"min_label_icon": "",
|
|
1738
|
-
"name": "temperature",
|
|
1739
|
-
"placeholder": "",
|
|
1740
|
-
"range_spec": {
|
|
1741
|
-
"max": 1,
|
|
1742
|
-
"min": 0,
|
|
1743
|
-
"step": 0.01,
|
|
1744
|
-
"step_type": "float"
|
|
1745
|
-
},
|
|
1746
|
-
"required": false,
|
|
1747
|
-
"show": true,
|
|
1748
|
-
"slider_buttons": false,
|
|
1749
|
-
"slider_buttons_options": [],
|
|
1750
|
-
"slider_input": false,
|
|
1751
|
-
"title_case": false,
|
|
1752
|
-
"tool_mode": false,
|
|
1753
|
-
"type": "slider",
|
|
1754
|
-
"value": 0.1
|
|
1755
|
-
}
|
|
1756
|
-
},
|
|
1757
|
-
"tool_mode": false
|
|
1758
|
-
},
|
|
1759
|
-
"selected_output": "text_output",
|
|
1760
|
-
"showNode": true,
|
|
1761
|
-
"type": "LanguageModelComponent"
|
|
1762
|
-
},
|
|
1763
|
-
"dragging": false,
|
|
1764
|
-
"id": "LanguageModelComponent-k0SIV",
|
|
1765
|
-
"measured": {
|
|
1766
|
-
"height": 534,
|
|
1767
|
-
"width": 320
|
|
1768
|
-
},
|
|
1769
|
-
"position": {
|
|
1770
|
-
"x": 2836.5657382114464,
|
|
1771
|
-
"y": 950.0578222812694
|
|
1772
|
-
},
|
|
1773
|
-
"selected": false,
|
|
1774
|
-
"type": "genericNode"
|
|
1775
|
-
},
|
|
1776
|
-
{
|
|
1777
|
-
"data": {
|
|
1778
|
-
"id": "LanguageModelComponent-sPFGT",
|
|
1779
|
-
"node": {
|
|
1780
|
-
"base_classes": [
|
|
1781
|
-
"LanguageModel",
|
|
1782
|
-
"Message"
|
|
1783
|
-
],
|
|
1784
|
-
"beta": false,
|
|
1785
|
-
"conditional_paths": [],
|
|
1786
|
-
"custom_fields": {},
|
|
1787
|
-
"description": "Runs a language model given a specified provider.",
|
|
1788
|
-
"display_name": "Language Model",
|
|
1789
|
-
"documentation": "",
|
|
1790
|
-
"edited": false,
|
|
1791
|
-
"field_order": [
|
|
1792
|
-
"provider",
|
|
1793
|
-
"model_name",
|
|
1794
|
-
"api_key",
|
|
1795
|
-
"input_value",
|
|
1796
|
-
"system_message",
|
|
1797
|
-
"stream",
|
|
1798
|
-
"temperature"
|
|
1799
|
-
],
|
|
1800
|
-
"frozen": false,
|
|
1801
|
-
"icon": "brain-circuit",
|
|
1802
|
-
"legacy": false,
|
|
1803
|
-
"metadata": {
|
|
1804
|
-
"code_hash": "bb5f8714781b",
|
|
1805
|
-
"dependencies": {
|
|
1806
|
-
"dependencies": [
|
|
1807
|
-
{
|
|
1808
|
-
"name": "langchain_anthropic",
|
|
1809
|
-
"version": "0.3.14"
|
|
1810
|
-
},
|
|
1811
|
-
{
|
|
1812
|
-
"name": "langchain_google_genai",
|
|
1813
|
-
"version": "2.0.6"
|
|
1814
|
-
},
|
|
1815
|
-
{
|
|
1816
|
-
"name": "langchain_openai",
|
|
1817
|
-
"version": "0.3.23"
|
|
1818
|
-
},
|
|
1819
|
-
{
|
|
1820
|
-
"name": "lfx",
|
|
1821
|
-
"version": null
|
|
1822
|
-
}
|
|
1823
|
-
],
|
|
1824
|
-
"total_dependencies": 4
|
|
1825
|
-
},
|
|
1826
|
-
"keywords": [
|
|
1827
|
-
"model",
|
|
1828
|
-
"llm",
|
|
1829
|
-
"language model",
|
|
1830
|
-
"large language model"
|
|
1831
|
-
],
|
|
1832
|
-
"module": "lfx.components.models.language_model.LanguageModelComponent"
|
|
1833
|
-
},
|
|
1834
|
-
"minimized": false,
|
|
1835
|
-
"output_types": [],
|
|
1836
|
-
"outputs": [
|
|
1837
|
-
{
|
|
1838
|
-
"allows_loop": false,
|
|
1839
|
-
"cache": true,
|
|
1840
|
-
"display_name": "Model Response",
|
|
1841
|
-
"group_outputs": false,
|
|
1842
|
-
"method": "text_response",
|
|
1843
|
-
"name": "text_output",
|
|
1844
|
-
"selected": "Message",
|
|
1845
|
-
"tool_mode": true,
|
|
1846
|
-
"types": [
|
|
1847
|
-
"Message"
|
|
1848
|
-
],
|
|
1849
|
-
"value": "__UNDEFINED__"
|
|
1850
|
-
},
|
|
1851
|
-
{
|
|
1852
|
-
"allows_loop": false,
|
|
1853
|
-
"cache": true,
|
|
1854
|
-
"display_name": "Language Model",
|
|
1855
|
-
"group_outputs": false,
|
|
1856
|
-
"method": "build_model",
|
|
1857
|
-
"name": "model_output",
|
|
1858
|
-
"selected": "LanguageModel",
|
|
1859
|
-
"tool_mode": true,
|
|
1860
|
-
"types": [
|
|
1861
|
-
"LanguageModel"
|
|
1862
|
-
],
|
|
1863
|
-
"value": "__UNDEFINED__"
|
|
1864
|
-
}
|
|
1865
|
-
],
|
|
1866
|
-
"pinned": false,
|
|
1867
|
-
"priority": 0,
|
|
1868
|
-
"template": {
|
|
1869
|
-
"_type": "Component",
|
|
1870
|
-
"api_key": {
|
|
1871
|
-
"_input_type": "SecretStrInput",
|
|
1872
|
-
"advanced": false,
|
|
1873
|
-
"display_name": "OpenAI API Key",
|
|
1874
|
-
"dynamic": false,
|
|
1875
|
-
"info": "Model Provider API key",
|
|
1876
|
-
"input_types": [],
|
|
1877
|
-
"load_from_db": true,
|
|
1878
|
-
"name": "api_key",
|
|
1879
|
-
"password": true,
|
|
1880
|
-
"placeholder": "",
|
|
1881
|
-
"real_time_refresh": true,
|
|
1882
|
-
"required": false,
|
|
1883
|
-
"show": true,
|
|
1884
|
-
"title_case": false,
|
|
1885
|
-
"type": "str",
|
|
1886
|
-
"value": "OPENAI_API_KEY"
|
|
1887
|
-
},
|
|
1888
|
-
"code": {
|
|
1889
|
-
"advanced": true,
|
|
1890
|
-
"dynamic": true,
|
|
1891
|
-
"fileTypes": [],
|
|
1892
|
-
"file_path": "",
|
|
1893
|
-
"info": "",
|
|
1894
|
-
"list": false,
|
|
1895
|
-
"load_from_db": false,
|
|
1896
|
-
"multiline": true,
|
|
1897
|
-
"name": "code",
|
|
1898
|
-
"password": false,
|
|
1899
|
-
"placeholder": "",
|
|
1900
|
-
"required": true,
|
|
1901
|
-
"show": true,
|
|
1902
|
-
"title_case": false,
|
|
1903
|
-
"type": "code",
|
|
1904
|
-
"value": "from lfx.base.models.model import LCModelComponent\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.base.models.watsonx_constants import IBM_WATSONX_URLS\nfrom lfx.field_typing import LanguageModel\nfrom lfx.field_typing.range_spec import RangeSpec\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, StrInput\nfrom lfx.io import MessageInput, ModelInput, MultilineInput, SecretStrInput, SliderInput\n\nDEFAULT_OLLAMA_URL = \"http://localhost:11434\"\n\n\nclass LanguageModelComponent(LCModelComponent):\n display_name = \"Language Model\"\n description = \"Runs a language model given a specified provider.\"\n documentation: str = \"https://docs.langflow.org/components-models\"\n icon = \"brain-circuit\"\n category = \"models\"\n priority = 0 # Set priority to 0 to make it appear first\n\n inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n required=False,\n show=True,\n real_time_refresh=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"base_url_ibm_watsonx\",\n display_name=\"watsonx API Endpoint\",\n info=\"The base URL of the API (IBM watsonx.ai only)\",\n options=IBM_WATSONX_URLS,\n value=IBM_WATSONX_URLS[0],\n show=False,\n real_time_refresh=True,\n ),\n StrInput(\n name=\"project_id\",\n display_name=\"watsonx Project ID\",\n info=\"The project ID associated with the foundation model (IBM watsonx.ai only)\",\n show=False,\n required=False,\n ),\n MessageInput(\n name=\"ollama_base_url\",\n display_name=\"Ollama API URL\",\n info=f\"Endpoint of the Ollama API (Ollama only). Defaults to {DEFAULT_OLLAMA_URL}\",\n value=DEFAULT_OLLAMA_URL,\n show=False,\n real_time_refresh=True,\n load_from_db=True,\n ),\n MessageInput(\n name=\"input_value\",\n display_name=\"Input\",\n info=\"The input text to send to the model\",\n ),\n MultilineInput(\n name=\"system_message\",\n display_name=\"System Message\",\n info=\"A system message that helps set the behavior of the assistant\",\n advanced=False,\n ),\n BoolInput(\n name=\"stream\",\n display_name=\"Stream\",\n info=\"Whether to stream the response\",\n value=False,\n advanced=True,\n ),\n SliderInput(\n name=\"temperature\",\n display_name=\"Temperature\",\n value=0.1,\n info=\"Controls randomness in responses\",\n range_spec=RangeSpec(min=0, max=1, step=0.01),\n advanced=True,\n ),\n ]\n\n def build_model(self) -> LanguageModel:\n return get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n temperature=self.temperature,\n stream=self.stream,\n )\n\n def update_build_config(self, build_config: dict, field_value: str, field_name: str | None = None):\n \"\"\"Dynamically update build config with user-filtered model options.\"\"\"\n return update_model_options_in_build_config(\n component=self,\n build_config=build_config,\n cache_key_prefix=\"language_model_options\",\n get_options_func=get_language_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n"
|
|
1905
|
-
},
|
|
1906
|
-
"input_value": {
|
|
1907
|
-
"_input_type": "MessageInput",
|
|
1908
|
-
"advanced": false,
|
|
1909
|
-
"display_name": "Input",
|
|
1910
|
-
"dynamic": false,
|
|
1911
|
-
"info": "The input text to send to the model",
|
|
1912
|
-
"input_types": [
|
|
1913
|
-
"Message"
|
|
1914
|
-
],
|
|
1915
|
-
"list": false,
|
|
1916
|
-
"list_add_label": "Add More",
|
|
1917
|
-
"load_from_db": false,
|
|
1918
|
-
"name": "input_value",
|
|
1919
|
-
"placeholder": "",
|
|
1920
|
-
"required": false,
|
|
1921
|
-
"show": true,
|
|
1922
|
-
"title_case": false,
|
|
1923
|
-
"tool_mode": false,
|
|
1924
|
-
"trace_as_input": true,
|
|
1925
|
-
"trace_as_metadata": true,
|
|
1926
|
-
"type": "str",
|
|
1927
|
-
"value": ""
|
|
1928
|
-
},
|
|
1929
|
-
"model_name": {
|
|
1930
|
-
"_input_type": "DropdownInput",
|
|
1931
|
-
"advanced": false,
|
|
1932
|
-
"combobox": false,
|
|
1933
|
-
"dialog_inputs": {},
|
|
1934
|
-
"display_name": "Model Name",
|
|
1935
|
-
"dynamic": false,
|
|
1936
|
-
"info": "Select the model to use",
|
|
1937
|
-
"name": "model_name",
|
|
1938
|
-
"options": [
|
|
1939
|
-
"gpt-4o-mini",
|
|
1940
|
-
"gpt-4o",
|
|
1941
|
-
"gpt-4.1",
|
|
1942
|
-
"gpt-4.1-mini",
|
|
1943
|
-
"gpt-4.1-nano",
|
|
1944
|
-
"gpt-4-turbo",
|
|
1945
|
-
"gpt-4-turbo-preview",
|
|
1946
|
-
"gpt-4",
|
|
1947
|
-
"gpt-3.5-turbo",
|
|
1948
|
-
"gpt-5",
|
|
1949
|
-
"gpt-5-mini",
|
|
1950
|
-
"gpt-5-nano",
|
|
1951
|
-
"gpt-5-chat-latest",
|
|
1952
|
-
"o1",
|
|
1953
|
-
"o3-mini",
|
|
1954
|
-
"o3",
|
|
1955
|
-
"o3-pro",
|
|
1956
|
-
"o4-mini",
|
|
1957
|
-
"o4-mini-high"
|
|
1958
|
-
],
|
|
1959
|
-
"options_metadata": [],
|
|
1960
|
-
"placeholder": "",
|
|
1961
|
-
"required": false,
|
|
1962
|
-
"show": true,
|
|
1963
|
-
"title_case": false,
|
|
1964
|
-
"toggle": false,
|
|
1965
|
-
"tool_mode": false,
|
|
1966
|
-
"trace_as_metadata": true,
|
|
1967
|
-
"type": "str",
|
|
1968
|
-
"value": "gpt-4o-mini"
|
|
1969
|
-
},
|
|
1970
|
-
"provider": {
|
|
1971
|
-
"_input_type": "DropdownInput",
|
|
1972
|
-
"advanced": false,
|
|
1973
|
-
"combobox": false,
|
|
1974
|
-
"dialog_inputs": {},
|
|
1975
|
-
"display_name": "Model Provider",
|
|
1976
|
-
"dynamic": false,
|
|
1977
|
-
"info": "Select the model provider",
|
|
1978
|
-
"name": "provider",
|
|
1979
|
-
"options": [
|
|
1980
|
-
"OpenAI",
|
|
1981
|
-
"Anthropic",
|
|
1982
|
-
"Google"
|
|
1983
|
-
],
|
|
1984
|
-
"options_metadata": [
|
|
1985
|
-
{
|
|
1986
|
-
"icon": "OpenAI"
|
|
1987
|
-
},
|
|
1988
|
-
{
|
|
1989
|
-
"icon": "Anthropic"
|
|
1990
|
-
},
|
|
1991
|
-
{
|
|
1992
|
-
"icon": "GoogleGenerativeAI"
|
|
1993
|
-
}
|
|
1994
|
-
],
|
|
1995
|
-
"placeholder": "",
|
|
1996
|
-
"real_time_refresh": true,
|
|
1997
|
-
"required": false,
|
|
1998
|
-
"show": true,
|
|
1999
|
-
"title_case": false,
|
|
2000
|
-
"toggle": false,
|
|
2001
|
-
"tool_mode": false,
|
|
2002
|
-
"trace_as_metadata": true,
|
|
2003
|
-
"type": "str",
|
|
2004
|
-
"value": "OpenAI"
|
|
2005
|
-
},
|
|
2006
|
-
"stream": {
|
|
2007
|
-
"_input_type": "BoolInput",
|
|
2008
|
-
"advanced": true,
|
|
2009
|
-
"display_name": "Stream",
|
|
2010
|
-
"dynamic": false,
|
|
2011
|
-
"info": "Whether to stream the response",
|
|
2012
|
-
"list": false,
|
|
2013
|
-
"list_add_label": "Add More",
|
|
2014
|
-
"name": "stream",
|
|
2015
|
-
"placeholder": "",
|
|
2016
|
-
"required": false,
|
|
2017
|
-
"show": true,
|
|
2018
|
-
"title_case": false,
|
|
2019
|
-
"tool_mode": false,
|
|
2020
|
-
"trace_as_metadata": true,
|
|
2021
|
-
"type": "bool",
|
|
2022
|
-
"value": false
|
|
2023
|
-
},
|
|
2024
|
-
"system_message": {
|
|
2025
|
-
"_input_type": "MultilineInput",
|
|
2026
|
-
"advanced": false,
|
|
2027
|
-
"copy_field": false,
|
|
2028
|
-
"display_name": "System Message",
|
|
2029
|
-
"dynamic": false,
|
|
2030
|
-
"info": "A system message that helps set the behavior of the assistant",
|
|
2031
|
-
"input_types": [
|
|
2032
|
-
"Message"
|
|
2033
|
-
],
|
|
2034
|
-
"list": false,
|
|
2035
|
-
"list_add_label": "Add More",
|
|
2036
|
-
"load_from_db": false,
|
|
2037
|
-
"multiline": true,
|
|
2038
|
-
"name": "system_message",
|
|
2039
|
-
"placeholder": "",
|
|
2040
|
-
"required": false,
|
|
2041
|
-
"show": true,
|
|
2042
|
-
"title_case": false,
|
|
2043
|
-
"tool_mode": false,
|
|
2044
|
-
"trace_as_input": true,
|
|
2045
|
-
"trace_as_metadata": true,
|
|
2046
|
-
"type": "str",
|
|
2047
|
-
"value": ""
|
|
2048
|
-
},
|
|
2049
|
-
"temperature": {
|
|
2050
|
-
"_input_type": "SliderInput",
|
|
2051
|
-
"advanced": true,
|
|
2052
|
-
"display_name": "Temperature",
|
|
2053
|
-
"dynamic": false,
|
|
2054
|
-
"info": "Controls randomness in responses",
|
|
2055
|
-
"max_label": "",
|
|
2056
|
-
"max_label_icon": "",
|
|
2057
|
-
"min_label": "",
|
|
2058
|
-
"min_label_icon": "",
|
|
2059
|
-
"name": "temperature",
|
|
2060
|
-
"placeholder": "",
|
|
2061
|
-
"range_spec": {
|
|
2062
|
-
"max": 1,
|
|
2063
|
-
"min": 0,
|
|
2064
|
-
"step": 0.01,
|
|
2065
|
-
"step_type": "float"
|
|
2066
|
-
},
|
|
2067
|
-
"required": false,
|
|
2068
|
-
"show": true,
|
|
2069
|
-
"slider_buttons": false,
|
|
2070
|
-
"slider_buttons_options": [],
|
|
2071
|
-
"slider_input": false,
|
|
2072
|
-
"title_case": false,
|
|
2073
|
-
"tool_mode": false,
|
|
2074
|
-
"type": "slider",
|
|
2075
|
-
"value": 0.1
|
|
2076
|
-
}
|
|
2077
|
-
},
|
|
2078
|
-
"tool_mode": false
|
|
2079
|
-
},
|
|
2080
|
-
"selected_output": "text_output",
|
|
2081
|
-
"showNode": true,
|
|
2082
|
-
"type": "LanguageModelComponent"
|
|
2083
|
-
},
|
|
2084
|
-
"dragging": false,
|
|
2085
|
-
"id": "LanguageModelComponent-sPFGT",
|
|
2086
|
-
"measured": {
|
|
2087
|
-
"height": 534,
|
|
2088
|
-
"width": 320
|
|
2089
|
-
},
|
|
2090
|
-
"position": {
|
|
2091
|
-
"x": 1957.3510719326769,
|
|
2092
|
-
"y": 406.3911300579277
|
|
2093
|
-
},
|
|
2094
|
-
"selected": false,
|
|
2095
|
-
"type": "genericNode"
|
|
2096
|
-
},
|
|
2097
1040
|
{
|
|
2098
1041
|
"data": {
|
|
2099
1042
|
"id": "note-7A8gW",
|