Heads up This site is currently under heavy development.
Subscribe Get it delivered — the daily firehose, filtered to the tools you run, plus the documentation changes vendors never announce. Compare plans →

The AI Toolchain — issue -415, April 27, 2021

THE AI TOOLCHAIN NO. -415
Tail
THE DAILY RELEASE FIREHOSE
PUBLISHED APRIL 27, 2021 · EVERY WEEKDAY
EDITIONS tail grep head diff uniq

The daily firehose — everything the toolchain shipped today, already filtered.

// HOW THIS ISSUE IS MADE

We read every release from the 174 tools on our watchlist at the source — GitHub and GitLab release notes, vendor release pages and changelogs, project blogs and feeds, vendor press releases, and the source code behind the tag. Bug-fix-only releases and non-product newsroom noise are dropped; what's left is summarized down to the new capability, how to try it, and any screenshots or videos the release itself published. Every entry links to the sources it was built from.

VIEW
ISSUE VIEW full issue
Do you prefer this view?
$ tct list   # 4 tools matched
AI & LLM Tooling
◆  AI Agent Frameworks

deepset Haystack

Sources Release notes → v0.8.0 NOTES

Haystack v0.8.0 adds MilvusDocumentStore, Knowledge Graph QA, YAML Pipeline config, confidence scores, and a Selenium web crawler.

└──▷ GET THIS VERSION
$ git clone --branch v0.8.0 https://github.com/deepset-ai/haystack.git
# already have the repo? check out this version:
$ git checkout v0.8.0
└──▷ TRY IT
Query the new generic REST API endpoint to get answers with calibrated confidence scores from any Pipeline-backed deployment.
$ curl -X POST http://localhost:8000/query \
  -H 'Content-Type: application/json' \
  -d '{"query": "Why did the revenue change?"}'
  • Adds MilvusDocumentStore class enabling embedding-based retrievers (DensePassageRetriever, EmbeddingRetriever) to use production-ready Milvus vector database servers for large-scale deployments.
  • Adds GraphDBKnowlegeGraph class for storing RDF Triples and executing SPARQL queries, integrable with the new Text2SparqlRetriever to convert natural language queries to SPARQL.
  • Introduces YAML-based Pipeline configuration via rest_api/pipeline.yaml, enabling shareable query and indexing configs, reproducible setups, and A/B testing of Pipelines.
  • Adds new generic POST /query endpoint to the REST API backed by Pipelines, replacing the former /doc-qa and /faq-qa endpoints; accepts a single query string and returns answers with a probability confidence score (range 0–1).
  • Adds new generic POST /feedback endpoint, replacing the former /doc-qa-feedback and /faq-qa-feedback endpoints.
+15 moreshow less
  • Adds API endpoint to export accuracy metrics derived from user feedback.
  • Adds a probability field (0–1) to answers, providing a calibrated model-confidence score alongside the existing score field.
  • Adds a Selenium-based web crawler class that accepts a list of URLs and converts extracted text into Haystack Documents.
  • Adds MarkdownConverter file converter for ingesting Markdown files into Haystack document stores.
  • Adds evaluation nodes for Pipelines to measure retriever and reader performance end-to-end.
  • Adds support for parallel paths in Pipelines, enabling branching and merging of pipeline components.
  • Adds support for indexing Pipelines alongside existing query Pipelines.
  • Introduces incremental embedding updates in document stores, avoiding full re-indexing when only some documents change.
  • Adds a window-query flag to SQLDocumentStore for controlling passage retrieval behavior.
  • Allows non-standard tokenizers (e.g., CamemBERT) for DensePassageRetriever via a new argument.
  • Adds model versioning support to Haystack modeling components.
  • Adds a SQuAD-to-DPR dataset converter for training data preparation.
  • Adds a method to retrieve metadata values for a given key from ElasticsearchDocumentStore.
  • Upgrades FAISS to version 1.7.0.
  • Adds a created_at timestamp field for documents and labels across all document stores (SQLDocumentStore, FAISSDocumentStore, ElasticsearchDocumentStore).
└──▷ BREAKING ON UPGRADE
  • !The /doc-qa and /faq-qa REST API endpoints are removed and replaced by a generic POST /query endpoint configured via rest_api/pipeline.yaml.
  • !The POST /query endpoint now expects a single query string per request instead of a list of query strings.
  • !The /doc-qa-feedback and /faq-qa-feedback REST API endpoints are removed and replaced by a generic POST /feedback endpoint.
  • !The created timestamp field on documents and labels in SQLDocumentStore and FAISSDocumentStore is replaced by created_at; ElasticsearchDocumentStore also now has created_at.
  • !The top_k_answers parameter in RAGenerator is renamed to top_k.
  • !Placeholder terms in the custom_query parameter for ElasticsearchDocumentStore must no longer have quotes around them.
Was this useful?
◆  AI Model & Data Infrastructure

NVIDIA Triton Inference Server

Sources Release notes → v2.9.0 NOTES

Triton v2.9.0 adds GKE Marketplace deployment, GRPC compression, ragged batching for TensorFlow, and ensemble unload control.

└──▷ GET THIS VERSION
$ git clone --branch v2.9.0 https://github.com/triton-inference-server/server.git
# already have the repo? check out this version:
$ git checkout v2.9.0
└──▷ USE IT
Load a TensorFlow SavedModel selecting a specific graph and signature_def via backend parameters in the model config.
yaml
parameters {
  key: "TF_GRAPH_TAG"
  value: { string_value: "serve" }
}
parameters {
  key: "TF_SIGNATURE_DEF"
  value: { string_value: "serving_default" }
}
  • The Model Control API gains an option to unload all models contained within an ensemble when unloading the ensemble itself — see the model-repository extension protocol docs.
  • GRPC client libraries now support enabling compression.
  • Ragged batching is now supported for TensorFlow models.
  • For TensorFlow SavedModel-format models, adds the ability to select which graph and signature_def to load via backend parameters.
  • Triton Server is now available as a GKE Marketplace Application.
+5 moreshow less
  • Adds a Helm Chart example for AWS deployments.
  • Python backend performance is significantly increased.
  • ONNX Runtime updated to version 1.7.1.
  • Model Analyzer summary reports now include GPU power usage.
  • Model Analyzer can now find the Top N model configurations across multiple models.
└──▷ BREAKING ON UPGRADE
  • !In the Python client shared-memory support library, utils.serialize_byte_tensor() and utils.deserialize_byte_tensor() now return np.object_ numpy arrays instead of np.bytes_ numpy arrays for tensors of type BYTES — code depending on np.bytes_ must be updated.
Was this useful?
Other / Uncategorized
◆  VECTOR DB RAG

Qdrant

Sources Release notes → v0.2.0 NOTES

Qdrant v0.2.0 adds payload field indexing for number and keyword types and revamps the Search API filter schema.

└──▷ GET THIS VERSION
$ git clone --branch v0.2.0 https://github.com/qdrant/qdrant.git
# already have the repo? check out this version:
$ git checkout v0.2.0
└──▷ TRY IT
Filter a search request using the new schema where key is a sibling of the condition object, not nested inside it.
$ curl -X POST 'http://localhost:6333/collections/{collection_name}/points/search' \
  -H 'Content-Type: application/json' \
  -d '{
    "vector": [0.1, 0.2, 0.3],
    "filter": {
      "should": [
        {
          "key": "city",
          "match": {
            "keyword": "London"
          }
        }
      ]
    },
    "top": 5
  }'
  • Adds the ability to mark a payload field as 'indexed', enabling payload indexation for number and keyword field types (geo field index is in progress).
  • Segments are now automatically rebuilt into MMap and indexed segments when enough vectors are stored, unlocking better performance at scale without manual intervention.
  • Changes the Search API filter schema: the key property moves out of the condition object (e.g. match) and becomes a sibling field alongside it — existing filter queries using the old nested-key layout will break.
└──▷ BREAKING ON UPGRADE
  • !The Search API filter schema has changed: key is no longer nested inside the condition object (e.g. match). It must now be a sibling field at the same level as the condition. Existing queries with the old layout (e.g. {"match": {"key": "city", "keyword": "London"}}) will break and must be updated to the new layout (e.g. {"key": "city", "match": {"keyword": "London"}}).
Was this useful?

Weaviate

Sources Release notes → v1.3.0 NOTES

Weaviate v1.3.0 adds a BERT-based Q&A module with a new ask{} GraphQL searcher and richer transformer model metadata via /v1/meta.

└──▷ GET THIS VERSION
$ git clone --branch v1.3.0 https://github.com/weaviate/weaviate.git
# already have the repo? check out this version:
$ git checkout v1.3.0
└──▷ USE IT
Ask a natural-language question against a Paragraph class and return the extracted answer with its certainty score.
graphql
{
  Get {
    Paragraph(
      ask: {
        question: "what is the population of Berlin?"
        certainty: 0.8
      }
    ) {
      _additional { answer { hasAnswer result certainty property startPosition endPosition } }
      text
    }
  }
}
  • Introduces the qna-transformers module, enabling BERT-style answer extraction via a new ask{} searcher on GraphQL Get { ... } queries, configured with a "question" (required string), optional "certainty" (float 0..1), and optional "properties" ([]string).
  • Adds a new _additional { answer { } } response field containing hasAnswer (boolean), result (nullable string), certainty (nullable float), property (nullable string), startPosition (int), and endPosition (int) — surfacing extracted answers directly in query results.
  • Supports custom Hugging Face models for Q&A via the semitechnologies/qna-transformers:custom base image, compatible with transformers.AutoModelForQuestionAnswering.
  • Expands the GET /v1/meta endpoint to include meta information about transformer models in use across all transformer-based modules.
Was this useful?
my-toolchain — 0 tools
paste an install list to detect your tools

A brew list, a Brewfile, requirements.txt, a Dockerfile — or just the product names, free-form. Nothing leaves your browser.

    browse all tools →