Skip to content

v1.5.5 — LMStudio fix, ConfigLoader .env.local, RTFLoader encoding

Choose a tag to compare

@AmitoVrito AmitoVrito released this 13 Apr 20:36
· 617 commits to main since this release
f0262fb

What's New in v1.5.5

This is a large community release — 18 additions and 5 bug fixes, shipping everything from the last two batches of PRs in one clean tag.

Added — Loaders (8 new)

  • S3Loader — Amazon S3 buckets; credential chain; prefix/extension filtering; pip install synapsekit[s3]
  • AzureBlobLoader — Azure Blob Storage; connection-string or URL+credential auth; pip install synapsekit[azure]
  • MongoDBLoader — MongoDB collections; configurable text/metadata fields; pip install synapsekit[mongodb]
  • DropboxLoader — Dropbox folders; cursor pagination; 20+ extensions; pip install synapsekit[dropbox]
  • LaTeXLoader.tex files as plain text; strips commands/math/comments; no external deps
  • TSVLoader — one Document per row; configurable text_column; remaining columns as metadata
  • RTFLoader — plain text via striprtf; pip install synapsekit[rtf]
  • EPUBLoader — chapter-by-chapter with title/author/chapter metadata; pip install synapsekit[epub]
  • ConfigLoader.env, .ini, .cfg, .toml, .env.local, .env.staging → Documents; sensitive key redaction built-in
  • OneDriveLoader — OneDrive/SharePoint via Microsoft Graph; recursive folder traversal; stdlib HTTP only

Added — LLMs & MCP

  • LMStudioLLM — local model provider via LM Studio's OpenAI-compatible API; streaming, tool calling, custom base_url; no API key required; pip install synapsekit[lmstudio]
  • MCPServer SSE transport — expose any SynapseKit pipeline as an MCP server; HTTP/SSE with optional Bearer auth; RAG, Agent, and Tools modes; pip install synapsekit[mcp]

Added — Eval & Graph

  • EvalDataset / EvalRecord — filterable eval result collection; export() to OpenAI, Anthropic, Together, JSONL, DPO formats
  • FineTuner — fine-tuning jobs against OpenAI and Together AI; submit(), status(), wait()
  • @eval_case(capture_io=True) — captures input/output/ideal for fine-tune dataset export
  • synapsekit eval CLIreport, export, compare subcommands
  • synapsekit finetune CLIsubmit, status, wait subcommands
  • Recursive Subgraphs — pass a StateGraph to subgraph_node(); max_recursion_depth guard; RecursionDepthError

Fixed

  • DropboxLoader SDK compatibility — SDK entry objects are not dicts; fixed with _normalise_entry() attribute-access adapter
  • LMStudioLLM base_urlLLMConfig has no base_url field; use LMStudioLLM(config, base_url="http://host:1234/v1") instead
  • LMStudioLLM streaming — removed stream_options that broke older LM Studio builds
  • ConfigLoader .env.local.env.local / .env.staging now parsed correctly (was raising ValueError)
  • RTFLoader encoding — default changed to "latin-1" for real-world RTF compatibility

Upgrade

pip install --upgrade synapsekit
# or
uv add synapsekit