Source
yaml
id: weaviate-csv
namespace: company.team
variables:
host: https://demo-ito81rf6.weaviate.network
secret: YOUR_WEAVIATE_API_KEY
tasks:
- id: csv
type: io.kestra.plugin.core.http.Download
uri: https://huggingface.co/datasets/kestra/datasets/raw/main/csv/trivia_questions.csv
- id: csv_to_ion
type: io.kestra.plugin.serdes.csv.CsvToIon
from: "{{ outputs.csv.uri }}"
- id: batch_load
type: io.kestra.plugin.weaviate.BatchCreate
url: "{{ vars.host }}"
apiKey: "{{ vars.secret }}"
className: QuestionsCsv
objects: "{{ outputs.csv_to_ion.uri }}"
- id: query
type: io.kestra.plugin.weaviate.Query
url: "{{ vars.host }}"
apiKey: "{{ vars.secret }}"
query: |
{
Get {
QuestionsCsv(limit: 10) {
answer
category
question
}
}
}
About this blueprint
Ingest AI API
This flow shows how to extract data from a CSV file using the HTTP API, load it to a Weaviate cluster and query it with GraphQL.
This flow assumes that you have a Weaviate cluster running, and that you created an API key. Make sure to replace the url
and apiKey
values in the tasks with your Weaviate credentials. It's recommended to use Secrets to store your API key.
Once you've configured the Weaviate secret, you can reproduce this flow without any changes. It will load the data from the Kaggle Jeopardy dataset to Weaviate, and then query it with GraphQL.
More Related Blueprints