Distilling news articles and legal research into simple chat experiences

Putting the community spotlight on Agustín Gomez and Alvaro Machuca, two developers based in Paraguay building real world applications for conversational search with your data.

Written by

Alex Francoeur

Published on

October 18, 2023

Today we’re putting the community spotlight on two developers based out of Paraguay, Agustín Gomez and Alvaro Machuca. They discovered Xata while looking for a serverless database offering that supported vector embeddings. Since starting with Xata a few months ago, Agustín and Alvaro have built two practical applications to provide chat experiences on very specific sets of data. Both apps have a similar tech stack and build experiences on top of Python / Django, Xata, and Vercel.

#

Generative search solutions

The first application is called ChatGOV and provides a simple and interactive way to converse about Paraguayan law.

ChatGOV beta
ChatGOV beta

All publicly accessible Paraguayan law was scraped and integrated into a Xata database. With these articles, LangChain and OpenAI were used to create embeddings, which were then stored in the same record as the respective legal documents. The ease of having the embeddings stored directly alongside the relational data made the journey to production extremely fast.

The second application is called Briefly News (GitHub repo). It provides a quick way to navigate the Paraguayan news and delve deeper into details about individuals mentioned in the articles.

Briefly News
Briefly News

This project is still early days, but has already scraped and ingested nearly 70,000 articles. It provides end-to-end workflows for filtering news articles based on certain criteria, visualizing common terms with a word cloud, aggregating statistics of the news articles, and a chat-based workflow for learning more about the people featured in a news article.

Rather than having disparate services and data stores to handle each one of these use cases, all of the data is simply stored in a Xata database. The Xata Python SDK and ORM-like experience was used for filtering, full-text search, aggregations and chat features.

Having been using Xata since early this year, we asked both Agustín and Alvaro what their favorite aspects of Xata have been so far, and what they’d like to see on our roadmap. Here were some of the reasons Agustín and Alvaro chose Xata for their chat solutions.

  • Transition from prototype to production. For both projects it was extremely easy to prototype, iterate quickly and turn on for production use.
  • Built-in vector DB. Not having to worry about another database service specialized for vector embeddings was a huge benefit.
  • Python SDK. The Python SDK has steadily seen improvements with each release; it’s been great to see the progression over time.

When asked what they’re looking forward to seeing, here’s what they shared.

If you’re interested in learning more about how to build practical solutions for generative search and the types of technical challenges you may find along the way, you can find Agustín, Alvaro, and the Xata team on our Discord server.

Do you have a similar story or community contribution you’d like to share? Send us an email if you’d like to be featured in our community spotlight. Until then, happy building 🦋

Start free,
pay as you grow

Xata provides the best free plan in the industry. It is production ready by default and doesn't pause or cool-down. Take your time to build your business and upgrade when you're ready to scale.

Free plan includes
  • 10 database branches
  • High availability
  • 15 GB data storage
  • 15 GB search engine storage
  • 2 GB file attachments
  • 250 AI queries per month
Start freeExplore all plans
Free plan includes
  • 10 database branches
  • High availability
  • 15 GB data storage
  • 15 GB search engine storage
  • 2 GB file attachments
  • 250 AI queries per month
Add column to table

Copyright © 2024 Xatabase Inc.
All rights reserved.

Product

RoadmapFeature requestsPricingStatusAI solutionsFile attachments