<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: goldsoft25</title>
    <description>The latest articles on Forem by goldsoft25 (@bogere).</description>
    <link>https://forem.com/bogere</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F100932%2F2ad29ece-3429-4f1e-a1da-5615a48bc0b7.jpeg</url>
      <title>Forem: goldsoft25</title>
      <link>https://forem.com/bogere</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/bogere"/>
    <language>en</language>
    <item>
      <title>Building AI powered Legal Voice AI Assistant</title>
      <dc:creator>goldsoft25</dc:creator>
      <pubDate>Sat, 26 Jul 2025 10:05:23 +0000</pubDate>
      <link>https://forem.com/bogere/building-ai-powered-legal-voice-ai-assistant-14ln</link>
      <guid>https://forem.com/bogere/building-ai-powered-legal-voice-ai-assistant-14ln</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/assemblyai-2025-07-16"&gt;AssemblyAI Voice Agents Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;An AI-powered voice assistant specialized in the legal industry.&lt;br&gt;&lt;br&gt;
It uses &lt;strong&gt;AssemblyAI&lt;/strong&gt; for transcription where the lawyers or everyday users can speak and it transcribes the spoken words to be analysed by the system. &lt;strong&gt;RAG (Retrieval-Augmented Generation)&lt;/strong&gt; for grounded responses, and tracks conversation quality through logs, ratings, and corrections.&lt;br&gt;
&lt;strong&gt;Prompt Category&lt;/strong&gt; - Domain Expert Voice Agent&lt;/p&gt;
&lt;h3&gt;
  
  
  Challenge
&lt;/h3&gt;

&lt;p&gt;The legal industry is characterized by its high volume of documentation, complex research requirements, and the critical need for accuracy and efficiency. Legal AI voice assistants, powered by advanced speech-to-text and natural language processing (NLP) technologies, offer a compelling solution to many of these challenges.&lt;br&gt;
Here's a detailed reason why we need legal AI voice assistants in the law industry:&lt;br&gt;
&lt;strong&gt;Legal Research and Information Retrieval&lt;/strong&gt;: The volume of legal precedents, statutes, regulations, and case law is immense. Traditional legal research can be a laborious process of sifting through countless documents. A voice assistant, integrated with legal databases, can allow lawyers to verbally query complex legal questions, retrieve relevant case law, statutes, and articles, and even summarize key findings. For example, a lawyer could ask, "Find all cases related to breach of contract in intellectual property disputes in the state of California from the last five years," and the AI could quickly surface highly relevant results.&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;
&lt;h2&gt;
  
  
  GitHub Repository
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/bogere/legal-ai-voice-assistant" rel="noopener noreferrer"&gt;Github link&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Technical Implementation &amp;amp; AssemblyAI Integration
&lt;/h2&gt;



&lt;p&gt;This is how I leverage AssemblyAI Universal Streaming API to transcribe the speech from the users to text that can be understood by the backend system (RAG module).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;

&lt;span class="n"&gt;ASSEMBLYAI_API_KEY&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;your_assemblyai_api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;span class="n"&gt;headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;authorization&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;ASSEMBLYAI_API_KEY&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;transcribe_audio_url&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;audio_url&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://api.assemblyai.com/v2/transcript&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;universal&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;endpoint&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;audio_url&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;audio_url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;speech_model&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>devchallenge</category>
      <category>assemblyaichallenge</category>
      <category>ai</category>
      <category>api</category>
    </item>
    <item>
      <title>Twilio Challenge: Building HR Whatapp bot for your workforce</title>
      <dc:creator>goldsoft25</dc:creator>
      <pubDate>Thu, 20 Jun 2024 15:04:38 +0000</pubDate>
      <link>https://forem.com/bogere/building-hr-whatapp-bot-for-your-workforce-35j1</link>
      <guid>https://forem.com/bogere/building-hr-whatapp-bot-for-your-workforce-35j1</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/twilio"&gt;Twilio Challenge v24.06.12&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;This is whatapp HR Bot that allows HR manager to load a CSV file for employee FAQs and then the employees can  ask questions about it using natural language. The application uses an LLM to generate a response about your CSV File and then sends to WhatsApp via the Twilio API&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;You can try it out by scanning the QR Code in the image or by texting the code to join something primitive to the number +14155238886 on WhatsApp. Next, ask a sample question such as What are the office hours or any other HR-related question&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frj1rth2fewfslaw2zl3l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frj1rth2fewfslaw2zl3l.png" alt="join via WhatsApp" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  source code
&lt;/h3&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--A9-wwsHG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/bogere"&gt;
        bogere
      &lt;/a&gt; / &lt;a href="https://github.com/bogere/whatapp_hr_bot"&gt;
        whatapp_hr_bot
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      WhatApp HR Bot for Twilio challenge
    &lt;/h3&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  Twilio and AI
&lt;/h2&gt;

&lt;p&gt;I used the langchain to utilise the openAI API to train the frequent Asked Questions(FAQs) information from the CSV file and then answer questions to the whatsapp user using the Twilio Programmable Messaging (WhatsApp Sandbox) and Twilio Programmable Voice for sending voice call responses.&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional Prize Categories
&lt;/h2&gt;

&lt;p&gt;Twilio Times Two - The project uses Twilio Programmable Messaging (WhatsApp Sandbox).&lt;br&gt;
Impactful Innovators - The project empowers employees to get access to employees handbook information without over burdening the HR manager&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjo80yr5avfuxtbo15qes.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjo80yr5avfuxtbo15qes.png" alt="Cover image" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>twiliochallenge</category>
      <category>ai</category>
      <category>twilio</category>
    </item>
  </channel>
</rss>
