# Persistent Session & Language Output Issue in Voice Agent

**URL:** <https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952>\
**Category:** CrewAI Community Support\
**Tags:** crewai, feature\
**Created:** [February 18, 2025, 11:01am UTC](https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952 "2025-02-18T11:01:57Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![SRISH\_RACHAMALLA](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/srish_rachamalla/32/2646_2.png) [@SRISH\_RACHAMALLA](https://community.crewai.com/u/SRISH_RACHAMALLA)\
**Post date:** [February 18, 2025, 11:01am UTC](https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952/1 "2025-02-18T11:01:57Z")

</div>

Hi everyone,

I’m building a voice agent using CrewAI where Arabic audio is transcribed and fed into GPT-4o. However, I face two issues:

1. **Session Persistence:** Every call to `crew.kickoff` resets the session, losing previous context. How can I maintain a continuous, multi-turn conversation with human-in-the-loop feedback?

2. **Language Output:** Since my transcriber outputs text, GPT-4o replies in Arabic. What’s the best way to force responses in another language (e.g., English) without breaking context?

Any advice or code snippets would be greatly appreciated!

---

<div class="post-metadata">

**Author:** ![zinyando](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/zinyando/32/4435_2.png) [@zinyando](https://community.crewai.com/u/zinyando)\
**Post date:** [February 18, 2025, 2:07pm UTC](https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952/2 "2025-02-18T14:07:34Z")

</div>

Maintain conversation history and pass it in with your inputs when you kickoff the crew. That was context is preserved in multi turn conversations.

To get replies in another language you might achieve this by adding a translator agent to your crew whose task is to translate the output to the language you want.

---

<div class="post-metadata">

**Author:** ![SRISH\_RACHAMALLA](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/srish_rachamalla/32/2646_2.png) [@SRISH\_RACHAMALLA](https://community.crewai.com/u/SRISH_RACHAMALLA)\
**Post date:** [February 24, 2025, 7:37am UTC](https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952/3 "2025-02-24T07:37:59Z")

</div>

Yes, this is what I created, but the issue here is that I am using a database, which is increasing the time by 2-4 seconds. Additionally, streaming is not supported. How can I reduce the time?

_ **I want to create an application like VAPI or Retell.** _

---

<div class="post-metadata">

**Author:** ![zinyando](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/zinyando/32/4435_2.png) [@zinyando](https://community.crewai.com/u/zinyando)\
**Post date:** [February 24, 2025, 9:59am UTC](https://community.crewai.com/t/persistent-session-language-output-issue-in-voice-agent/3952/4 "2025-02-24T09:59:32Z")

</div>

The database cost will always be there, you might need to be creative and use something like redis that’s in-memory or a database that’s fast.
