Metadata-Version: 2.1
Name: vocode
Version: 0.1.43
Summary: The all-in-one voice SDK
License: MIT
Author: Ajay Raj
Author-email: ajay@vocode.dev
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Provides-Extra: io
Requires-Dist: anyio (==3.6.2)
Requires-Dist: black (==23.1.0)
Requires-Dist: certifi (==2022.12.7)
Requires-Dist: cffi (==1.15.1)
Requires-Dist: charset-normalizer (==3.0.1)
Requires-Dist: click (==8.1.3)
Requires-Dist: decorator (==5.1.1)
Requires-Dist: fastapi (==0.92.0)
Requires-Dist: flake8 (==6.0.0)
Requires-Dist: h11 (==0.14.0)
Requires-Dist: idna (==3.4)
Requires-Dist: mccabe (==0.7.0)
Requires-Dist: mypy-extensions (==1.0.0)
Requires-Dist: numpy (==1.24.2)
Requires-Dist: packaging (==23.0)
Requires-Dist: pathspec (==0.11.0)
Requires-Dist: platformdirs (==3.1.0)
Requires-Dist: ply (==3.11)
Requires-Dist: pyaudio (==0.2.13) ; extra == "io"
Requires-Dist: pycodestyle (==2.10.0)
Requires-Dist: pycparser (==2.21)
Requires-Dist: pydantic (==1.10.5)
Requires-Dist: pyflakes (==3.0.1)
Requires-Dist: pyjwt (==2.6.0)
Requires-Dist: python-dotenv (==0.21.1)
Requires-Dist: python-multipart (==0.0.6)
Requires-Dist: pytz (==2022.7.1)
Requires-Dist: requests (==2.28.2)
Requires-Dist: six (==1.16.0)
Requires-Dist: sniffio (==1.3.0)
Requires-Dist: sounddevice (==0.4.6) ; extra == "io"
Requires-Dist: starlette (==0.25.0)
Requires-Dist: tomli (==2.0.1)
Requires-Dist: twilio (==7.16.5)
Requires-Dist: typing-extensions (==4.5.0)
Requires-Dist: urllib3 (==1.26.14)
Requires-Dist: uvicorn (==0.20.0)
Requires-Dist: websockets (==10.4)
Description-Content-Type: text/markdown

# vocode Python SDK

```
pip install vocode
```

```python
import asyncio
import signal

from vocode.conversation import Conversation
from vocode.helpers import create_microphone_input_and_speaker_output
from vocode.models.transcriber import DeepgramTranscriberConfig
from vocode.models.agent import LLMAgentConfig
from vocode.models.synthesizer import AzureSynthesizerConfig

if __name__ == "__main__":
    microphone_input, speaker_output = create_microphone_input_and_speaker_output(use_first_available_device=True)

    conversation = Conversation(
        input_device=microphone_input,
        output_device=speaker_output,
        transcriber_config=DeepgramTranscriberConfig.from_input_device(microphone_input),
        agent_config=LLMAgentConfig(prompt_preamble="The AI is having a pleasant conversation about life."),
        synthesizer_config=AzureSynthesizerConfig.from_output_device(speaker_output)
    )
    signal.signal(signal.SIGINT, lambda _0, _1: conversation.deactivate())
    asyncio.run(conversation.start())
```

