agentsclimarketplace

Importing

Skill oceanbase/oceanbase-skills/skills/seekdb/importing

Import CSV or Excel files into seekdb vector database and manage collections. Supports automatic vectorization of specified columns using embedding functions. When users need to: (1) Read and preview Excel files, (2) Import CSV/Excel data into seekdb, (3) Create vector collections from tabular data, (4) Vectorize specific text columns for semantic search, (5) Batch insert product/document data with embeddings, (6) Delete collections, or (7) Access sample data files (sample_products.csv/xlsx) for testing - IMPORTANT: sample files are located in this skill's example-data/ directory, you MUST read this skill file first to get the correct path.From its SKILL.md

Install
npx -y skills add oceanbase/oceanbase-skills --skill importing

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.5 KB, as published. Nobody here has run it

Import Data Files to seekdb

Read, preview, and import CSV or Excel files into seekdb vector database with optional column vectorization for semantic search. Also provides collection delete functionality.

Path Convention

Note: All paths in this document (e.g., scripts/, example-data/) are relative to THIS skill directory, not the project root.

Prerequisites

  • Python 3.10+ installed
  • Required packages:
pip install pyseekdb pandas openpyxl

Sample Data

Sample data files are provided in the example-data/ directory:

FileDescription
sample_products.csvSample product data in CSV format
sample_products.xlsxSample product data in Excel format

Quick Start

Use the provided scripts/import_to_seekdb.py script:

# Import with vectorization on Details column
python scripts/import_to_seekdb.py import example-data/sample_products.csv --vectorize-column Details

# Import without vectorization
python scripts/import_to_seekdb.py import example-data/sample_products.csv

# Import Excel with custom collection name
python scripts/import_to_seekdb.py import example-data/sample_products.xlsx -v Description -c my_products

# Delete a collection
python scripts/import_to_seekdb.py delete my_collection

Note: To list all collections, use query_from_seekdb.py list from the querying-from-seekdb skill.

Scripts

This skill provides the following scripts in the scripts/ directory:

ScriptDescription
import_to_seekdb.pyMain script with CLI interface for importing data and managing collections
read_excel.pyRead and preview Excel files with detailed information

Available Commands

import_to_seekdb.py

CommandDescription
import <file>Import CSV/Excel file to seekdb with optional vectorization
delete <name>Delete a collection from seekdb

read_excel.py

Read and preview Excel files before importing:

# Basic preview (show file info and first 5 rows)
python scripts/read_excel.py example-data/sample_products.xlsx

# List all sheets
python scripts/read_excel.py example-data/sample_products.xlsx --list-sheets

# Preview specific sheet with more rows
python scripts/read_excel.py data.xlsx --sheet "Sheet2" --rows 20

# Show column information and statistics
python scripts/read_excel.py example-data/sample_products.xlsx --columns --stats

# Export to CSV
python scripts/read_excel.py example-data/sample_products.xlsx --to-csv output.csv
OptionDescription
--sheet, -sSheet name to read (default: first sheet)
--rows, -rNumber of rows to preview (default: 5)
--list-sheets, -lList all sheets and exit
--columns, -cShow detailed column information
--statsShow statistics for numeric columns
--to-csvExport sheet to CSV file
--all-rows, -aDisplay all rows

Workflow

The import_to_seekdb.py script automatically handles the following steps:

  1. Read Data File - Supports CSV (.csv) and Excel (.xlsx, .xls) formats
  2. Connect to seekdb - Uses environment variables for server mode, or embedded mode by default
  3. Create Collection - With optional vectorization using default embedding function (all-MiniLM-L6-v2, 384 dimensions)
  4. Import Data - Batch processing with configurable batch size
  5. Verify - Displays record count and data preview after import

User Interaction Guide

For Reading Excel Files

When user wants to preview or inspect an Excel file before importing:

# Preview file structure and data
python scripts/read_excel.py <file_path>

# With column details and statistics
python scripts/read_excel.py <file_path> --columns --stats

This helps users:

  • Understand the file structure (sheets, columns, row count)
  • Identify which column to vectorize
  • Check data quality before importing

For Data Import

When user requests data import, ask:

  1. File path: "Please provide the path to your CSV or Excel file."
    • If user needs sample data, use files from the example-data/ directory
    • Suggest using read_excel.py to preview the file first
  2. Vectorization: "Would you like to enable vector search by vectorizing a column? (yes/no)"
  3. Column selection (if yes): "Which column to vectorize? (e.g., 'Details', 'Description')"
  4. Collection name: "Collection name? (default: derived from filename)"
  5. Connection mode: "Embedded (local) or server mode?"

For Collection Management

  • List collections: Use query_from_seekdb.py list from the querying-from-seekdb skill
  • Delete collection: Run python scripts/import_to_seekdb.py delete <collection_name>

Embedding Functions

The script uses the default embedding function (all-MiniLM-L6-v2, 384 dimensions) when vectorization is enabled via --vectorize-column.

Handling Large Files

For files with >10,000 rows, the import_to_seekdb.py script uses batch processing automatically. You can configure batch size:

python scripts/import_to_seekdb.py import large_file.csv -v Details --batch-size 500

References

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.