Data Source Node
The Data Source Node plays the role of fetching external data. It can perform API calls, database queries, file reading, etc.
π Data Source Node List
| Node | Description | Usage Example |
|---|---|---|
| VectorDB | Retrieve AI reference docs | RAG, Doc Search |
| Http Request | Call REST API | Weather, News, External Data |
VectorDB
Add data for AI to reference
β¨ Key Features
- β Upload documents and save to Vector DB
- β Auto-search documents related to the question
- β Prompt Auto-Completion (Optimized for RAG)
π§ Configuration
| Setting | Description | Example |
|---|---|---|
| files | List of document files to reference | PDF, TXT, MD, etc. |
π Supported File Formats
- β PDF
- β TXT
- β Markdown (.md)
π― Usage
Upload Documents
- Click VectorDB node
- "Add File" button
- Upload documents (Max 10MB)
Auto Vectorization
- Uploaded docs are automatically vectorized
- Semantic search enabled
Search & Prompt Generation
- Searches relevant docs based on the previous node's input (question).
- Important: Combines searched content and user question to generate a complete prompt text.
π Result Data Structure
This node returns not just simple document content, but a formatted prompt text ready to send to LLM ({{result}}).
Components:
- Searched related document chunks (
[context]) - User question (
[query])
Example ({{result}} value):
[context]:
Similarity: 0.8123
(Reference Doc Content 1...)
==========
Similarity: 0.7654
(Reference Doc Content 2...)
---
[query]: User entered question
π‘ Usage Example
Document-based Q&A Chatbot
[Text Input] β [VectorDB] β [ChatGPT] β [Chatbot Response]
- User enters question
- VectorDB finds related docs and forms prompt
- ChatGPT receives `` and generates answer without extra prompting
ChatGPT Config Example:
prompt: {{result}}
(system prompt only needs role definition)
Http Request
Sends an HTTP request including JSON Body
β¨ Key Features
- β Call REST API
- β Support GET, POST, PUT, DELETE
- β Custom Header settings
- β Send JSON Body
π§ Required Settings
| Setting | Description | Example |
|---|---|---|
| url* | API Address | https://api.example.com/data |
| method* | HTTP Method | GET, POST, PUT, DELETE |
| headers* | HTTP Headers | {'Content-Type': 'application/json'} |
| body* | Request Body (JSON) | {{result}} |
π‘ GET Request Example
Call Weather API
URL: https://api.openweathermap.org/data/2.5/weather?q=Seoul&appid=YOUR_API_KEY
Method: GET
Headers: {'Content-Type': 'application/json'}
Body: (Empty)
π‘ POST Request Example
Call External AI API
URL: https://api.example.com/generate
Method: POST
Headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
}
Body: {
"prompt": "{{result}}",
"max_tokens": 100
}
π Result Data
Access API response via {{result}} in the next node
Example: {{result}} β API response text (JSON String, etc.)
π‘ Usage Example 1: Weather-based Recommendation
[Click] β [Http Request] β [ChatGPT] β [Telegram]
- Call Weather API via Http Request
- ChatGPT recommends outfit based on weather
- Send to Telegram
π‘ Usage Example 2: News Summary
[Click] β [Http Request] β [ChatGPT] β [Slack]
- Fetch latest news from News API
- ChatGPT summarizes in 3 lines
- Send to Slack
π― Pro Tips
API Key Security Management
- β Exposed in URL:
?api_key=123456 - β
Send via Header:
{'Authorization': 'Bearer 123456'}
Dynamic URL Generation
https://api.example.com/user/{{result}}
π VectorDB vs Http Request
| Item | VectorDB | Http Request |
|---|---|---|
| Purpose | Document Search (RAG) | API Call |
| Data | Internal Documents | External API |
| Result | Completed Prompt | Raw API Response |
| Example | Q&A, Manual Search | Weather, News, Integration |
π Connecting with Other Nodes
VectorDB + AI Generation
[Question] β [VectorDB] β [ChatGPT] β [Response]
Since VectorDB already creates the prompt, use {{result}} as is in the AI node.
Http Request + AI Generation
[Start] β [Http Request] β [Claude] β [Slack]
AI analyzes the data received from the API.
π― Next Steps
- Text Generation Node - Generate text with AI
- Image Generation Node - Generate images with AI
- Output Node - Send results
β FAQ
Q: How many files can I upload to VectorDB? A: Currently, 10MB per file, up to 100MB total.
Q: What happens if Http Request times out? A: It automatically fails after 30 seconds, and the workflow stops.