3 News from Seattle

Automated News Summarization and Translation Service. This service automatically selects the three “most interesting” news articles from The Seattle Times, creates a summary for each with an accompanying photo, translates the summaries into Russian, and publishes them to a web page as a continuous news stream.

Sample screenshot

Check out the output

Link (in Russian): Сегодня в Сиэтле (drwuaze.site)

Motivation

I developed this service primarily for my parents, enabling them to read concise summaries of Seattle news in Russian. This project bridges their language gap and keeps them connected to local events in my area.

Who Could This Be Useful For?

This type of service could be beneficial for various groups:

  1. Immigrants: People with limited language skills who want to stay connected with local news in their native language.
  2. Language Learners: Students learning Russian (or English) can compare original English news with translations to improve their skills.
  3. Cross-cultural Families: Families with members speaking different languages can share local news and stay connected.
  4. Researchers and Analysts: Those studying media trends or conducting cross-cultural studies could use this tool to analyze how news is presented across languages.
  5. News Aggregators: Smaller news outlets looking to provide international coverage could adapt this service to offer translated summaries of foreign news.
  6. Travel and Relocation Services: Companies helping people move internationally could offer this as a service to help newcomers stay informed about their new home.

Development Details

  • Time to create the service: 2-3 weeks
  • Coding:
    • ChatGPT: 80%
    • Claude: 15%
    • Manual coding: 5%
  • News update frequency: Daily
  • Operating cost: Approximately 20 cents per month

AI used

  • ChatGPT: For news selection, summarization, and translation validation (second pass)
  • Microsoft Bing Translator: For the initial translation (first pass)

Workflow

  1. Retrieve news articles and URLs, filtering out previously processed items
  2. Use ChatGPT to select the most interesting news from the title list
  3. Feed full text of selected news to ChatGPT for summarization
  4. Translate summaries using Microsoft Bing Translator
  5. Employ ChatGPT to validate and refine translations
  6. Perform post-processing and publish results to the Web site via FTP
  7. Do a full data backup

Key Learnings

  1. ChatGPT outperformed other LLMs (e.g., locally-run Llama 2 and Claude) in terms of cost-effectiveness for news selection and summarization
  2. Microsoft Bing Translator proved a good quality of translation, also offering ~1M words/month at no cost.
  3. One end-to-end run takes 4-5 minutes.
  4. I implemented local data caching for most workflow steps to optimize speed of troubleshooting and cost of re-running the workflow. For instance, if the translation step fails, the workflow doesn’t need to retrieve and summarize news for the failed task again, but retrieves data from cache.
  5. I added a simple functionality to manually correct translation errors. MT is not perfect, and I can quickly fix the translation if needed.
  6. It is easy to add a new target language – as long as it is supported by Microsoft Translator and ChatGPT.
  7. Initially, I used Tumblr as the output (the service still publishes news to Tumblr), however, it turns out that it requires readers to register, and not everyone likes it. So, I decided to produce a standalone HTML and publish it.
  8. I tried using ChatGPT to make the target HTML page mobile-friendly, however, the result wasn’t that great. Claude produced a good template and the code though, and I am using it ever since.
  9. Automating going through paywalls could be tricky. But – doable.

Considerations for Future Improvements

  1. My tests indicate that ChatGPT 4o mini provides a much better translation quality than Bing Translator and can summarize and translate in one step. So, eventually my plan for v.2 is to simplify the workflow.
  2. Expand the service to include additional target languages. I have code translating from Russian into Hindi, but never looked into translation quality.
  3. Currently, the output page gets truncated, and it may make sense to add a multi-page implementation.
  4. News search functionality.

Bottom Line

While the initial setup required time and effort, the majority of the coding was accomplished by AI, specifically ChatGPT. This project demonstrates the power of AI in creating practical, cost-effective solutions for everyday problems, bridging language barriers, and connecting people across cultures.