Vector Stores

Upload up to 10,000 files per vector store. GlomaxGPT handles chunking, embedding, and indexing automatically.

RAG Ready

Attach vector stores to responses and let the model search your documents in real time to ground answers in your data.

50+ Formats

Support for PDF, DOCX, TXT, PPTX, CSV, JSON, HTML, Markdown, code files, and many more.

How it works — Files are split into chunks, embedded with glomaxgpt-embed-large, and stored in a managed vector database. At query time, the model issues semantic search queries, retrieves relevant chunks, and synthesizes a grounded response with file citations.

Creating a Vector Store

A vector store is a managed collection of embedded file chunks. Create one through the API or dashboard, then attach it to any response that uses File Search.

Python — Create Vector Store
from GlomaxGPT import GlomaxGPT

client = GlomaxGPT()

# Create an empty vector store
vector_store = client.vector_stores.create(
    name="Company Knowledge Base",
    expires_after={
        "anchor": "last_active_at",
        "days": 30
    }
)

print(f"Vector store ID: {vector_store.id}")
# Output: Vector store ID: vs_abc123xyz

Uploading Files

Upload files to a vector store using client.vector_stores.files.upload_and_poll() for a single file, or batch upload for multiple files at once. The _and_poll variants wait until processing is complete.

Python
from GlomaxGPT import GlomaxGPT

client = GlomaxGPT()

# Upload a single file and wait for processing
with open("company_handbook.pdf", "rb") as f:
    file = client.vector_stores.files.upload_and_poll(
        vector_store_id="vs_abc123xyz",
        file=f
    )

print(f"File status: {file.status}")
# Output: File status: completed
Python — Batch Upload
import pathlib
from GlomaxGPT import GlomaxGPT

client = GlomaxGPT()

# Gather all PDF files from a folder
file_paths = list(pathlib.Path("./docs").glob("*.pdf"))
file_streams = [open(path, "rb") for path in file_paths]

# Upload and poll until all files are processed
batch = client.vector_stores.file_batches.upload_and_poll(
    vector_store_id="vs_abc123xyz",
    files=file_streams
)

print(f"Status: {batch.status}")
print(f"Files: {batch.file_counts}")

# Close file streams
for stream in file_streams:
    stream.close()
Python — Add Existing File IDs
from GlomaxGPT import GlomaxGPT

client = GlomaxGPT()

# If you already uploaded files via client.files.create()
existing_file_ids = [
    "file-abc123",
    "file-def456",
    "file-ghi789"
]

batch = client.vector_stores.file_batches.create_and_poll(
    vector_store_id="vs_abc123xyz",
    file_ids=existing_file_ids
)

print(f"Batch status: {batch.status}")
print(f"Completed: {batch.file_counts.completed}")

Using File Search in Responses

Attach your vector store to the File Search tool and pass it in the tools array. The model will automatically query the vector store when it needs information from your documents.

Python — Full RAG Example
from GlomaxGPT import GlomaxGPT

client = GlomaxGPT()

response = client.responses.create(
    model="glomaxgpt-ultra",
    input="What is our company's remote work policy?",
    tools=[{
        "type": "file_search",
        "vector_store_ids": ["vs_abc123xyz"],
        "max_num_results": 10,
        "ranking_options": {
            "ranker": "auto",
            "score_threshold": 0.5
        }
    }],
    instructions="You are an HR assistant. Answer questions using the provided company documents."
)

print(response.output_text)

# Extract file citations
for item in response.output:
    if item.type == "message":
        for content in item.content:
            if hasattr(content, "annotations"):
                for ann in content.annotations:
                    if ann.type == "file_citation":
                        print(f"Cited from file: {ann.file_id}, quote: {ann.quote[:80]}")

Parametreler

Parameter Type Default Description
vector_store_ids array List of vector store IDs to search. Maximum 1 per request currently.
max_num_results integer 10 Maximum number of chunks to retrieve per search query. Range: 1–50.
ranking_options.ranker string "auto" Ranking algorithm. Options: "auto" or "default_2024_08_21".
ranking_options.score_threshold float 0.0 Minimum relevance score (0.0–1.0). Chunks below this score are filtered out.
filters object Metadata filters to narrow search to specific files or attributes.

Metadata Filtering

Attach metadata to files when uploading and filter searches to specific subsets of your vector store. Useful for multi-tenant scenarios or document categorization.

Python — Metadata Filter
response = client.responses.create(
    model="glomaxgpt-ultra",
    input="What are the Q3 2025 sales figures?",
    tools=[{
        "type": "file_search",
        "vector_store_ids": ["vs_abc123xyz"],
        "filters": {
            "type": "eq",
            "key": "department",
            "value": "sales"
        }
    }]
)

Supported File Formats

File Search supports over 50 file types. Text is extracted and chunked automatically — no manual preprocessing required.

Documents

PDF DOCX DOC PPTX PPT ODT RTF EPUB

Data & Markup

CSV JSON JSONL XML HTML Markdown YAML TOML

Code & Text

TXT Python JavaScript TypeScript Go Rust Java C/C++
File Size Limit — Individual files must be under 512 MB. Vector stores can hold up to 10,000 files with a combined storage limit of 100 GB. Scanned PDFs without OCR text layers may not index correctly.

Fiyatlar

File Search charges are based on vector store storage and search calls.

Vector store storage $0.10 / GB / day
File search retrieval $0.002 / search call
First 1 GB storage Free
Free Tier — The first 1 GB of vector store storage is always free. This is enough for thousands of typical documents.

Sonraki Adımlar

Combine File Search with Web Search to ground answers in both your private documents and the live web simultaneously.