Skip to content
How to use a durabl...
 
Notifications
Clear all

How to use a durable identifier with Eleven Labs RAG AI agent

3 Posts
3 Users
0 Reactions
6 Views
Andre_dos_Santos_Abu
(@andre_dos_santos_abu)
Posts: 1
New Member
Topic starter
 

I'm building a chatbot with persistent memory and am having trouble finding a way to receive an identifier from Eleven Labs. Any suggestions for improvements would be greatly appreciated.

I'm also encountering issues with Eleven Labs; it seems to misinterpret names and doesn't pronounce text correctly.

I'm currently using version 1.91.2 of the cloud version of callin.io.

 
Posted : 08/05/2025 7:18 pm
Erick_Torres
(@erick_torres)
Posts: 9
Active Member
 

Hi André,

I encountered a similar challenge when integrating ElevenLabs with persistent memory in a chatbot setup using callin.io. Here's what I discovered:


Durable Identifiers with ElevenLabs

At present, ElevenLabs does not provide a consistent identifier (such as audio_id or voice_id) in a format that can be easily saved and reused later for retrieval or tracking, particularly when accessed via their API within a tool context.

What proved effective for me was:

  1. Manually creating my own sessionId based on user input (e.g., phone/email/chat ID) and explicitly passing it through the agent memory (I see you're already implementing this in your Set node – well done).
  2. Saving a reference to the generated audio (or text output) in Postgres or Supabase using a custom ID.
  3. Regarding voice accuracy issues: ElevenLabs sometimes struggles with specific names or entities. I typically resolve this by:

    • Explicitly including pronunciation hints in the prompt (e.g., “The name is Alcira, pronounced Ahl-see-rah”).
    • Or, preprocessing text with phonetic replacements before sending it to ElevenLabs.

Regarding Agent Memory

I noticed you're utilizing the Postgres Chat Memory node – this is excellent for persistence. Just ensure that the sessionId is consistently passed from both webhook and chat trigger sources. Your Set node handles fallback scenarios effectively ($json?.chatInput || $json.body.chatInput), so you're on the right track.


Suggestion for ID Flow

If you are generating audio from ElevenLabs and wish to persist a usable ID, you could:

  • Generate your own UID at the start of the flow (e.g., uuid() or timestamp-sessionId) and associate it with the result.
  • Store that UID in a Postgres table alongside the complete ElevenLabs response (or audio URL).
  • Use that same UID later to query memory, retrieve the audio, or perform analytics.

Let me know if you'd like an example of how to save audio generation history with your sessionId and retrieve it later for auditing or reuse.

 
Posted : 15/05/2025 1:48 pm
system
(@system)
Posts: 332
Reputable Member
 

This discussion was automatically closed 7 days following the last response. New replies are no longer permitted.

 
Posted : 22/05/2025 1:48 pm
Share: