April 4, 2023

Как самому сделать сервер телефонных звонков ChatGPT

Сервер телефонных звонков ChatGPT

Вот шаблон для начала работы:

Работает от [Vocode](https://docs.vocode.dev/welcome )

Приступаем к работе

1. Создайте [Twilio](https://www.twilio.com /) учетная запись.
2. Найдите учетные данные своей учетной записи в разделе "Информация об учетной записи" на панели мониторинга.
3. Установите переменные окружения `TWILIO_ACCOUNT_SID` и `TWILIO_AUTH_TOKEN` в качестве секретов в этом Repl.
4. На панели управления Twilio перейдите в раздел "Номера телефонов" -> "Управление", чтобы получить новый номер телефона.
5. Обновите конфигурацию вашего номера, чтобы URL-адрес Webhook соответствовал URL-адресу вашего Repl (например, `https://<repl>.<имя пользователя>.repl.co/vocode `. Вот скриншот:

![Добавить URL-адрес реплика](TwilioConfigScreenshot.png)

6. Получите ключ API из Vocode [здесь](https://app.vocode.dev /).
7. Наберите свой номер и получайте удовольствие! 🥳


**Убедитесь, что вы установили следующие переменные среды:**

## Ключ API Vocode

Установите переменную окружения `VOCODE_API_KEY` в качестве секретной в этом Repl с помощью вашего API-ключа из [Vocode](https://app.vocode.dev /).

## SID учетной записи Twilio

Установите переменную окружения `TWILIO_ACCOUNT_SID` в качестве секрета в этом Repl с помощью вашего API-ключа из [Twilio]([https://app.vocode.dev /](https://www.twilio.com/try-twilio )).

Вы можете найти это в разделе "Информация об учетной записи" на панели мониторинга Twilio.

## Токен авторизации Twilio

Установите переменную окружения `TWILIO_AUTH_TOKEN` в качестве секрета в этом Repl с помощью вашего API-ключа из [Twilio]([https://app.vocode.dev /](https://www.twilio.com/try-twilio )).

Вы можете найти это в разделе "Информация об учетной записи" на панели мониторинга Twilio.

## Документы по вокодированию

Чтобы узнать больше о том, как работает Vocode, ознакомьтесь с их [документацией](https://docs.vocode.dev/welcome ).

main.py

# See README.md for instructions on how to get started
from fastapi import Response
import os
import vocode
from vocode.streaming.telephony.inbound_call_server import InboundCallServer
from vocode.streaming.models.message import BaseMessage
from vocode.streaming.models.telephony import TwilioConfig
from vocode.streaming.models.agent import ChatGPTAgentConfig

vocode.api_key = os.getenv("VOCODE_API_KEY")

REPLIT_URL = f"https://{os.getenv('REPL_SLUG')}.{os.getenv('REPL_OWNER')}.repl.co"

if __name__ == "__main__":
  server = InboundCallServer(
    agent_config=ChatGPTAgentConfig(
      initial_message=BaseMessage(text="Hey Zahid! What's up?"),
      prompt_preamble=
      "You are a helpful AI assistant. Answer questions in 50 words or less.",
    ),
    twilio_config=TwilioConfig(
      account_sid=os.getenv("TWILIO_ACCOUNT_SID"),
      auth_token=os.getenv("TWILIO_AUTH_TOKEN"),
    ),
  )
  server.app.get("/")(lambda: Response(
    content=
    f"<div>Fork this Repl and see README.md for instructions! Don't forget to paste your Repl's URL into your Twilio config like this: {REPLIT_URL}/vocode<br><br>Watch the <a href='https://twitter.com/chillzaza_/status/1641255992045322240?s=20' target='_blank'>live demo</a> to see it in action!</div>",
    media_type="text/html"))
  server.run(host="0.0.0.0", port=3000)

poetry.lock

[[package]]
name = "aiohttp"
version = "3.8.4"
description = "Async http client/server framework (asyncio)"
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
aiosignal = ">=1.1.2"
async-timeout = ">=4.0.0a3,<5.0"
attrs = ">=17.3.0"
charset-normalizer = ">=2.0,<4.0"
frozenlist = ">=1.1.1"
multidict = ">=4.5,<7.0"
yarl = ">=1.0,<2.0"

[package.extras]
speedups = ["aiodns", "brotli", "cchardet"]

[[package]]
name = "aiosignal"
version = "1.3.1"
description = "aiosignal: a list of registered asynchronous callbacks"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
frozenlist = ">=1.1.0"

[[package]]
name = "anyio"
version = "3.6.2"
description = "High level compatibility layer for multiple asynchronous event loop implementations"
category = "main"
optional = false
python-versions = ">=3.6.2"

[package.dependencies]
idna = ">=2.8"
sniffio = ">=1.1"

[package.extras]
doc = ["packaging", "sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"]
test = ["coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "contextlib2", "uvloop (<0.15)", "mock (>=4)", "uvloop (>=0.15)"]
trio = ["trio (>=0.16,<0.22)"]

[[package]]
name = "argon2-cffi"
version = "21.3.0"
description = "The secure Argon2 password hashing algorithm."
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
argon2-cffi-bindings = "*"

[package.extras]
dev = ["pre-commit", "cogapp", "tomli", "coverage[toml] (>=5.0.2)", "hypothesis", "pytest", "sphinx", "sphinx-notfound-page", "furo"]
docs = ["sphinx", "sphinx-notfound-page", "furo"]
tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pytest"]

[[package]]
name = "argon2-cffi-bindings"
version = "21.2.0"
description = "Low-level CFFI bindings for Argon2"
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
cffi = ">=1.0.1"

[package.extras]
dev = ["pytest", "cogapp", "pre-commit", "wheel"]
tests = ["pytest"]

[[package]]
name = "async-timeout"
version = "4.0.2"
description = "Timeout context manager for asyncio programs"
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "attrs"
version = "22.2.0"
description = "Classes Without Boilerplate"
category = "main"
optional = false
python-versions = ">=3.6"

[package.extras]
cov = ["attrs", "coverage-enable-subprocess", "coverage[toml] (>=5.3)"]
dev = ["attrs"]
docs = ["furo", "sphinx", "myst-parser", "zope.interface", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier"]
tests = ["attrs", "zope.interface"]
tests-no-zope = ["hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist", "cloudpickle", "mypy (>=0.971,<0.990)", "pytest-mypy-plugins"]
tests_no_zope = ["hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist", "cloudpickle", "mypy (>=0.971,<0.990)", "pytest-mypy-plugins"]

[[package]]
name = "azure-cognitiveservices-speech"
version = "1.25.0"
description = "\"Microsoft Cognitive Services Speech SDK\""
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "cachetools"
version = "5.3.0"
description = "Extensible memoizing collections and decorators"
category = "main"
optional = false
python-versions = "~=3.7"

[[package]]
name = "certifi"
version = "2022.12.7"
description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "cffi"
version = "1.15.1"
description = "Foreign Function Interface for Python calling C code."
category = "main"
optional = false
python-versions = "*"

[package.dependencies]
pycparser = "*"

[[package]]
name = "charset-normalizer"
version = "3.0.1"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
category = "main"
optional = false
python-versions = "*"

[[package]]
name = "click"
version = "8.1.3"
description = "Composable command line interface toolkit"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
colorama = {version = "*", markers = "platform_system == \"Windows\""}

[[package]]
name = "colorama"
version = "0.4.6"
description = "Cross-platform colored terminal text."
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"

[[package]]
name = "cryptography"
version = "38.0.4"
description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
cffi = ">=1.12"

[package.extras]
docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"]
docstest = ["pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"]
sdist = ["setuptools-rust (>=0.11.4)"]
ssh = ["bcrypt (>=3.1.5)"]
test = ["pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"]

[[package]]
name = "dataclasses-json"
version = "0.5.7"
description = "Easily serialize dataclasses to and from JSON"
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
marshmallow = ">=3.3.0,<4.0.0"
marshmallow-enum = ">=1.5.1,<2.0.0"
typing-inspect = ">=0.4.0"

[package.extras]
dev = ["pytest (>=6.2.3)", "ipython", "mypy (>=0.710)", "hypothesis", "portray", "flake8", "simplejson", "types-dataclasses"]

[[package]]
name = "debugpy"
version = "1.6.5"
description = "An implementation of the Debug Adapter Protocol for Python"
category = "dev"
optional = false
python-versions = ">=3.7"

[[package]]
name = "decorator"
version = "5.1.1"
description = "Decorators for Humans"
category = "main"
optional = false
python-versions = ">=3.5"

[[package]]
name = "fastapi"
version = "0.92.0"
description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
pydantic = ">=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0"
starlette = ">=0.25.0,<0.26.0"

[package.extras]
all = ["email-validator (>=1.1.1)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "python-multipart (>=0.0.5)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"]
dev = ["pre-commit (>=2.17.0,<3.0.0)", "ruff (==0.0.138)", "uvicorn[standard] (>=0.12.0,<0.21.0)"]
doc = ["mdx-include (>=1.4.1,<2.0.0)", "mkdocs-markdownextradata-plugin (>=0.1.7,<0.3.0)", "mkdocs-material (>=8.1.4,<9.0.0)", "mkdocs (>=1.1.2,<2.0.0)", "pyyaml (>=5.3.1,<7.0.0)", "typer[all] (>=0.6.1,<0.8.0)"]
test = ["anyio[trio] (>=3.2.1,<4.0.0)", "black (==22.10.0)", "coverage[toml] (>=6.5.0,<8.0)", "databases[sqlite] (>=0.3.2,<0.7.0)", "email-validator (>=1.1.1,<2.0.0)", "flask (>=1.1.2,<3.0.0)", "httpx (>=0.23.0,<0.24.0)", "isort (>=5.0.6,<6.0.0)", "mypy (==0.982)", "orjson (>=3.2.1,<4.0.0)", "passlib[bcrypt] (>=1.7.2,<2.0.0)", "peewee (>=3.13.3,<4.0.0)", "pytest (>=7.1.3,<8.0.0)", "python-jose[cryptography] (>=3.3.0,<4.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "pyyaml (>=5.3.1,<7.0.0)", "ruff (==0.0.138)", "sqlalchemy (>=1.3.18,<1.4.43)", "types-orjson (==3.6.2)", "types-ujson (==5.6.0.0)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0,<6.0.0)"]

[[package]]
name = "flask"
version = "2.2.2"
description = "A simple framework for building complex web applications."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
click = ">=8.0"
itsdangerous = ">=2.0"
Jinja2 = ">=3.0"
Werkzeug = ">=2.2.2"

[package.extras]
async = ["asgiref (>=3.2)"]
dotenv = ["python-dotenv"]

[[package]]
name = "frozenlist"
version = "1.3.3"
description = "A list-like structure which implements collections.abc.MutableSequence"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "google-api-core"
version = "2.11.0"
description = "Google API client core library"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
google-auth = ">=2.14.1,<3.0dev"
googleapis-common-protos = ">=1.56.2,<2.0dev"
grpcio = {version = ">=1.33.2,<2.0dev", optional = true, markers = "extra == \"grpc\""}
grpcio-status = {version = ">=1.33.2,<2.0dev", optional = true, markers = "extra == \"grpc\""}
protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0dev"
requests = ">=2.18.0,<3.0.0dev"

[package.extras]
grpc = ["grpcio (>=1.33.2,<2.0dev)", "grpcio-status (>=1.33.2,<2.0dev)", "grpcio (>=1.49.1,<2.0dev)", "grpcio-status (>=1.49.1,<2.0dev)"]
grpcgcp = ["grpcio-gcp (>=0.2.2,<1.0dev)"]
grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0dev)"]

[[package]]
name = "google-auth"
version = "2.16.3"
description = "Google Authentication Library"
category = "main"
optional = false
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*"

[package.dependencies]
cachetools = ">=2.0.0,<6.0"
pyasn1-modules = ">=0.2.1"
rsa = {version = ">=3.1.4,<5", markers = "python_version >= \"3.6\""}
six = ">=1.9.0"

[package.extras]
aiohttp = ["requests (>=2.20.0,<3.0.0dev)", "aiohttp (>=3.6.2,<4.0.0dev)"]
enterprise_cert = ["cryptography (==36.0.2)", "pyopenssl (==22.0.0)"]
pyopenssl = ["pyopenssl (>=20.0.0)", "cryptography (>=38.0.3)"]
reauth = ["pyu2f (>=0.1.5)"]
requests = ["requests (>=2.20.0,<3.0.0dev)"]

[[package]]
name = "google-cloud-speech"
version = "2.17.3"
description = "Google Cloud Speech API client library"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
google-api-core = {version = ">=1.34.0,<2.0.0 || >=2.11.0,<3.0.0dev", extras = ["grpc"]}
proto-plus = ">=1.22.0,<2.0.0dev"
protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0dev"

[[package]]
name = "google-cloud-texttospeech"
version = "2.14.1"
description = "Google Cloud Texttospeech API client library"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
google-api-core = {version = ">=1.34.0,<2.0.0 || >=2.11.0,<3.0.0dev", extras = ["grpc"]}
proto-plus = ">=1.22.0,<2.0.0dev"
protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0dev"

[[package]]
name = "googleapis-common-protos"
version = "1.59.0"
description = "Common protobufs used in Google APIs"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0dev"

[package.extras]
grpc = ["grpcio (>=1.44.0,<2.0.0dev)"]

[[package]]
name = "greenlet"
version = "2.0.2"
description = "Lightweight in-process concurrent programming"
category = "main"
optional = false
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*"

[package.extras]
docs = ["sphinx", "docutils (<0.18)"]
test = ["objgraph", "psutil"]

[[package]]
name = "grpcio"
version = "1.51.3"
description = "HTTP/2-based RPC framework"
category = "main"
optional = false
python-versions = ">=3.7"

[package.extras]
protobuf = ["grpcio-tools (>=1.51.3)"]

[[package]]
name = "grpcio-status"
version = "1.51.3"
description = "Status proto mapping for gRPC"
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
googleapis-common-protos = ">=1.5.5"
grpcio = ">=1.51.3"
protobuf = ">=4.21.6"

[[package]]
name = "h11"
version = "0.14.0"
description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "idna"
version = "3.4"
description = "Internationalized Domain Names in Applications (IDNA)"
category = "main"
optional = false
python-versions = ">=3.5"

[[package]]
name = "iso8601"
version = "1.1.0"
description = "Simple module to parse ISO 8601 dates"
category = "main"
optional = false
python-versions = ">=3.6.2,<4.0"

[[package]]
name = "itsdangerous"
version = "2.1.2"
description = "Safely pass data to untrusted environments and back."
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "jedi"
version = "0.18.2"
description = "An autocompletion tool for Python that can be used for text editors."
category = "dev"
optional = false
python-versions = ">=3.6"

[package.dependencies]
parso = ">=0.8.0,<0.9.0"

[package.extras]
docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx-rtd-theme (==0.4.3)", "sphinx (==1.8.5)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"]
qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
testing = ["Django (<3.1)", "attrs", "colorama", "docopt", "pytest (<7.0.0)"]

[[package]]
name = "jinja2"
version = "3.1.2"
description = "A very fast and expressive template engine."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
MarkupSafe = ">=2.0"

[package.extras]
i18n = ["Babel (>=2.7)"]

[[package]]
name = "joblib"
version = "1.2.0"
description = "Lightweight pipelining with Python functions"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "langchain"
version = "0.0.117"
description = "Building applications with LLMs through composability"
category = "main"
optional = false
python-versions = ">=3.8.1,<4.0"

[package.dependencies]
aiohttp = ">=3.8.3,<4.0.0"
dataclasses-json = ">=0.5.7,<0.6.0"
numpy = ">=1,<2"
pydantic = ">=1,<2"
PyYAML = ">=5.4.1"
requests = ">=2,<3"
SQLAlchemy = ">=1,<2"
tenacity = ">=8.1.0,<9.0.0"

[package.extras]
all = ["faiss-cpu (>=1,<2)", "wikipedia (>=1,<2)", "elasticsearch (>=8,<9)", "opensearch-py (>=2.0.0,<3.0.0)", "redis (>=4,<5)", "manifest-ml (>=0.0.1,<0.0.2)", "spacy (>=3,<4)", "nltk (>=3,<4)", "transformers (>=4,<5)", "beautifulsoup4 (>=4,<5)", "torch (>=1,<2)", "jinja2 (>=3,<4)", "tiktoken (>=0,<1)", "pinecone-client (>=2,<3)", "weaviate-client (>=3,<4)", "google-api-python-client (==2.70.0)", "wolframalpha (==5.0.0)", "anthropic (>=0.2.2,<0.3.0)", "qdrant-client (>=1.0.4,<2.0.0)", "tensorflow-text (>=2.11.0,<3.0.0)", "cohere (>=3,<4)", "openai (>=0,<1)", "nlpcloud (>=1,<2)", "nomic (>=1.0.43,<2.0.0)", "huggingface_hub (>=0,<1)", "google-search-results (>=2,<3)", "sentence-transformers (>=2,<3)", "pypdf (>=3.4.0,<4.0.0)", "networkx (>=2.6.3,<3.0.0)", "aleph-alpha-client (>=2.15.0,<3.0.0)", "deeplake (>=3.2.9,<4.0.0)", "pgvector (>=0.1.6,<0.2.0)", "psycopg2-binary (>=2.9.5,<3.0.0)"]
llms = ["manifest-ml (>=0.0.1,<0.0.2)", "transformers (>=4,<5)", "torch (>=1,<2)", "anthropic (>=0.2.2,<0.3.0)", "cohere (>=3,<4)", "openai (>=0,<1)", "nlpcloud (>=1,<2)", "huggingface_hub (>=0,<1)"]

[[package]]
name = "markupsafe"
version = "2.1.2"
description = "Safely add untrusted strings to HTML/XML markup."
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "marshmallow"
version = "3.19.0"
description = "A lightweight library for converting complex datatypes to and from native Python datatypes."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
packaging = ">=17.0"

[package.extras]
dev = ["pytest", "pytz", "simplejson", "mypy (==0.990)", "flake8 (==5.0.4)", "flake8-bugbear (==22.10.25)", "pre-commit (>=2.4,<3.0)", "tox"]
docs = ["sphinx (==5.3.0)", "sphinx-issues (==3.0.1)", "alabaster (==0.7.12)", "sphinx-version-warning (==1.1.2)", "autodocsumm (==0.2.9)"]
lint = ["mypy (==0.990)", "flake8 (==5.0.4)", "flake8-bugbear (==22.10.25)", "pre-commit (>=2.4,<3.0)"]
tests = ["pytest", "pytz", "simplejson"]

[[package]]
name = "marshmallow-enum"
version = "1.5.1"
description = "Enum field for Marshmallow"
category = "main"
optional = false
python-versions = "*"

[package.dependencies]
marshmallow = ">=2.0.0"

[[package]]
name = "mccabe"
version = "0.7.0"
description = "McCabe checker, plugin for flake8"
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "multidict"
version = "6.0.4"
description = "multidict implementation"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "mypy-extensions"
version = "1.0.0"
description = "Type system extensions for programs checked with the mypy type checker."
category = "main"
optional = false
python-versions = ">=3.5"

[[package]]
name = "nltk"
version = "3.8.1"
description = "Natural Language Toolkit"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
click = "*"
joblib = "*"
regex = ">=2021.8.3"
tqdm = "*"

[package.extras]
all = ["scikit-learn", "python-crfsuite", "requests", "numpy", "pyparsing", "twython", "scipy", "matplotlib"]
corenlp = ["requests"]
machine_learning = ["numpy", "python-crfsuite", "scikit-learn", "scipy"]
plot = ["matplotlib"]
tgrep = ["pyparsing"]
twitter = ["twython"]

[[package]]
name = "numpy"
version = "1.24.2"
description = "Fundamental package for array computing in Python"
category = "main"
optional = false
python-versions = ">=3.8"

[[package]]
name = "openai"
version = "0.27.2"
description = "Python client library for the OpenAI API"
category = "main"
optional = false
python-versions = ">=3.7.1"

[package.dependencies]
aiohttp = "*"
requests = ">=2.20"
tqdm = "*"

[package.extras]
datalib = ["numpy", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "openpyxl (>=3.0.7)"]
dev = ["black (>=21.6b0,<22.0.0)", "pytest (>=6.0.0,<7.0.0)", "pytest-asyncio", "pytest-mock"]
embeddings = ["scikit-learn (>=1.0.2)", "tenacity (>=8.0.1)", "matplotlib", "plotly", "numpy", "scipy", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "openpyxl (>=3.0.7)"]
wandb = ["wandb", "numpy", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "openpyxl (>=3.0.7)"]

[[package]]
name = "packaging"
version = "23.0"
description = "Core utilities for Python packages"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "parso"
version = "0.8.3"
description = "A Python Parser"
category = "dev"
optional = false
python-versions = ">=3.6"

[package.extras]
qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
testing = ["docopt", "pytest (<6.0.0)"]

[[package]]
name = "passlib"
version = "1.7.4"
description = "comprehensive password hashing framework supporting over 30 schemes"
category = "main"
optional = false
python-versions = "*"

[package.dependencies]
argon2-cffi = {version = ">=18.2.0", optional = true, markers = "extra == \"argon2\""}

[package.extras]
argon2 = ["argon2-cffi (>=18.2.0)"]
bcrypt = ["bcrypt (>=3.1.0)"]
build_docs = ["sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)", "cloud-sptheme (>=1.10.1)"]
totp = ["cryptography"]

[[package]]
name = "pathspec"
version = "0.11.0"
description = "Utility library for gitignore style pattern matching of file paths."
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "platformdirs"
version = "3.1.0"
description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "main"
optional = false
python-versions = ">=3.7"

[package.extras]
docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)", "sphinx (>=6.1.3)"]
test = ["appdirs (==1.4.4)", "covdefaults (>=2.2.2)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.2.1)"]

[[package]]
name = "pluggy"
version = "1.0.0"
description = "plugin and hook calling mechanisms for python"
category = "dev"
optional = false
python-versions = ">=3.6"

[package.extras]
testing = ["pytest-benchmark", "pytest"]
dev = ["tox", "pre-commit"]

[[package]]
name = "ply"
version = "3.11"
description = "Python Lex & Yacc"
category = "main"
optional = false
python-versions = "*"

[[package]]
name = "proto-plus"
version = "1.22.2"
description = "Beautiful, Pythonic protocol buffers."
category = "main"
optional = false
python-versions = ">=3.6"

[package.dependencies]
protobuf = ">=3.19.0,<5.0.0dev"

[package.extras]
testing = ["google-api-core[grpc] (>=1.31.5)"]

[[package]]
name = "protobuf"
version = "4.22.1"
description = ""
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "pyasn1"
version = "0.4.8"
description = "ASN.1 types and codecs"
category = "main"
optional = false
python-versions = "*"

[[package]]
name = "pyasn1-modules"
version = "0.2.8"
description = "A collection of ASN.1-based protocols modules."
category = "main"
optional = false
python-versions = "*"

[package.dependencies]
pyasn1 = ">=0.4.6,<0.5.0"

[[package]]
name = "pycodestyle"
version = "2.10.0"
description = "Python style guide checker"
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "pycparser"
version = "2.21"
description = "C parser in Python"
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"

[[package]]
name = "pycryptodomex"
version = "3.16.0"
description = "Cryptographic library for Python"
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"

[[package]]
name = "pydantic"
version = "1.9.2"
description = "Data validation and settings management using python type hints"
category = "main"
optional = false
python-versions = ">=3.6.1"

[package.dependencies]
typing-extensions = ">=3.7.4.3"

[package.extras]
dotenv = ["python-dotenv (>=0.10.4)"]
email = ["email-validator (>=1.0.3)"]

[[package]]
name = "pyflakes"
version = "2.5.0"
description = "passive checker of Python programs"
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "pyjwt"
version = "2.6.0"
description = "JSON Web Token implementation in Python"
category = "main"
optional = false
python-versions = ">=3.7"

[package.extras]
crypto = ["cryptography (>=3.4.0)"]
dev = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface", "cryptography (>=3.4.0)", "pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)", "pre-commit"]
docs = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"]
tests = ["pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)"]

[[package]]
name = "pyseto"
version = "1.7.0"
description = "A Python implementation of PASETO/PASERK."
category = "main"
optional = false
python-versions = ">=3.7,<4.0"

[package.dependencies]
cryptography = ">=36,<39"
iso8601 = ">=1.0.2,<2.0.0"
passlib = {version = ">=1.7.4,<2.0.0", extras = ["argon2"]}
pycryptodomex = ">=3.12.0,<4.0.0"

[package.extras]
docs = ["Sphinx[docs] (>=4.3.2,<6.0.0)", "sphinx-autodoc-typehints[docs] (==1.12.0)", "sphinx-rtd-theme[docs] (>=1.0.0,<2.0.0)"]

[[package]]
name = "python-dotenv"
version = "0.21.1"
description = "Read key-value pairs from a .env file and set them as environment variables"
category = "main"
optional = false
python-versions = ">=3.7"

[package.extras]
cli = ["click (>=5.0)"]

[[package]]
name = "python-lsp-jsonrpc"
version = "1.0.0"
description = "JSON RPC 2.0 server library"
category = "dev"
optional = false
python-versions = "*"

[package.dependencies]
ujson = ">=3.0.0"

[package.extras]
test = ["coverage", "pytest-cov", "pytest", "pyflakes", "pycodestyle", "pylint"]

[[package]]
name = "python-multipart"
version = "0.0.6"
description = "A streaming multipart parser for Python"
category = "main"
optional = false
python-versions = ">=3.7"

[package.extras]
dev = ["atomicwrites (==1.2.1)", "attrs (==19.2.0)", "coverage (==6.5.0)", "hatch", "invoke (==1.7.3)", "more-itertools (==4.3.0)", "pbr (==4.3.0)", "pluggy (==1.0.0)", "py (==1.11.0)", "pytest-cov (==4.0.0)", "pytest-timeout (==2.1.0)", "pytest (==7.2.0)", "pyyaml (==5.1)"]

[[package]]
name = "pytoolconfig"
version = "1.2.5"
description = "Python tool configuration"
category = "dev"
optional = false
python-versions = ">=3.7"

[package.dependencies]
packaging = ">=22.0"
platformdirs = {version = ">=1.4.4", optional = true, markers = "extra == \"global\""}
tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""}

[package.extras]
doc = ["tabulate (>=0.8.9)", "sphinx (>=4.5.0)"]
gendocs = ["sphinx (>=4.5.0)", "sphinx-autodoc-typehints (>=1.18.1)", "sphinx-rtd-theme (>=1.0.0)", "pytoolconfig"]
global = ["platformdirs (>=1.4.4)"]
validation = ["pydantic (>=1.7.4)"]

[[package]]
name = "pytz"
version = "2022.7.1"
description = "World timezone definitions, modern and historical"
category = "main"
optional = false
python-versions = "*"

[[package]]
name = "pyyaml"
version = "6.0"
description = "YAML parser and emitter for Python"
category = "main"
optional = false
python-versions = ">=3.6"

[[package]]
name = "redis"
version = "4.5.3"
description = "Python client for Redis database and key-value store"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
async-timeout = {version = ">=4.0.2", markers = "python_version < \"3.11\""}

[package.extras]
hiredis = ["hiredis (>=1.0.0)"]
ocsp = ["cryptography (>=36.0.1)", "pyopenssl (==20.0.1)", "requests (>=2.26.0)"]

[[package]]
name = "regex"
version = "2023.3.23"
description = "Alternative regular expression module, to replace re."
category = "main"
optional = false
python-versions = ">=3.8"

[[package]]
name = "replit"
version = "3.2.5"
description = "A library for interacting with features of repl.it"
category = "main"
optional = false
python-versions = ">=3.8,<4.0"

[package.dependencies]
aiohttp = ">=3.6.2,<4.0.0"
Flask = ">=2.0.0,<3.0.0"
protobuf = ">=4.21.8,<5.0.0"
pyseto = ">=1.6.11,<2.0.0"
requests = ">=2.25.1,<3.0.0"
typing_extensions = ">=3.7.4,<4.0.0"
Werkzeug = ">=2.0.0,<3.0.0"

[[package]]
name = "replit-python-lsp-server"
version = "1.15.9"
description = "Python Language Server for the Language Server Protocol"
category = "dev"
optional = false
python-versions = ">=3.7"

[package.dependencies]
jedi = ">=0.17.2,<0.19.0"
pluggy = ">=1.0.0"
pyflakes = {version = ">=2.5.0,<2.6.0", optional = true, markers = "extra == \"pyflakes\""}
python-lsp-jsonrpc = ">=1.0.0"
rope = {version = ">0.10.5", optional = true, markers = "extra == \"rope\""}
toml = ">=0.10.2"
ujson = ">=3.0.0"
whatthepatch = {version = ">=1.0.2,<2.0.0", optional = true, markers = "extra == \"yapf\""}
yapf = {version = "*", optional = true, markers = "extra == \"yapf\""}

[package.extras]
all = ["autopep8 (>=1.6.0,<1.7.0)", "flake8 (>=5.0.0,<5.1.0)", "mccabe (>=0.7.0,<0.8.0)", "pycodestyle (>=2.9.0,<2.10.0)", "pydocstyle (>=2.0.0)", "pyflakes (>=2.5.0,<2.6.0)", "pylint (>=2.5.0)", "rope (>=0.10.5)", "yapf", "whatthepatch"]
autopep8 = ["autopep8 (>=1.6.0,<1.7.0)"]
flake8 = ["flake8 (>=5.0.0,<5.1.0)"]
mccabe = ["mccabe (>=0.7.0,<0.8.0)"]
pycodestyle = ["pycodestyle (>=2.9.0,<2.10.0)"]
pydocstyle = ["pydocstyle (>=2.0.0)"]
pyflakes = ["pyflakes (>=2.5.0,<2.6.0)"]
pylint = ["pylint (>=2.5.0)"]
rope = ["rope (>0.10.5)"]
test = ["pylint (>=2.5.0)", "pytest", "pytest-cov", "coverage", "numpy (<1.23)", "pandas", "matplotlib", "pyqt5", "flaky"]
websockets = ["websockets (>=10.3)"]
yapf = ["yapf", "whatthepatch (>=1.0.2,<2.0.0)"]

[[package]]
name = "requests"
version = "2.28.2"
description = "Python HTTP for Humans."
category = "main"
optional = false
python-versions = ">=3.7, <4"

[package.dependencies]
certifi = ">=2017.4.17"
charset-normalizer = ">=2,<4"
idna = ">=2.5,<4"
urllib3 = ">=1.21.1,<1.27"

[package.extras]
socks = ["PySocks (>=1.5.6,!=1.5.7)"]
use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"]

[[package]]
name = "rope"
version = "1.7.0"
description = "a python refactoring library..."
category = "dev"
optional = false
python-versions = ">=3.7"

[package.dependencies]
pytoolconfig = {version = ">=1.2.2", extras = ["global"]}

[package.extras]
dev = ["pytest (>=7.0.1)", "pytest-timeout (>=2.1.0)", "build (>=0.7.0)", "pre-commit (>=2.20.0)"]
doc = ["pytoolconfig", "sphinx (>=4.5.0)", "sphinx-autodoc-typehints (>=1.18.1)", "sphinx-rtd-theme (>=1.0.0)"]

[[package]]
name = "rsa"
version = "4.9"
description = "Pure-Python RSA implementation"
category = "main"
optional = false
python-versions = ">=3.6,<4"

[package.dependencies]
pyasn1 = ">=0.1.3"

[[package]]
name = "six"
version = "1.16.0"
description = "Python 2 and 3 compatibility utilities"
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"

[[package]]
name = "sniffio"
version = "1.3.0"
description = "Sniff out which async library your code is running under"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "sqlalchemy"
version = "1.4.47"
description = "Database Abstraction Library"
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7"

[package.dependencies]
greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"}

[package.extras]
aiomysql = ["greenlet (!=0.4.17)", "aiomysql"]
aiosqlite = ["typing-extensions (!=3.10.0.1)", "greenlet (!=0.4.17)", "aiosqlite"]
asyncio = ["greenlet (!=0.4.17)"]
asyncmy = ["greenlet (!=0.4.17)", "asyncmy (>=0.2.3,!=0.2.4)"]
mariadb_connector = ["mariadb (>=1.0.1,!=1.1.2)"]
mssql = ["pyodbc"]
mssql_pymssql = ["pymssql"]
mssql_pyodbc = ["pyodbc"]
mypy = ["sqlalchemy2-stubs", "mypy (>=0.910)"]
mysql = ["mysqlclient (>=1.4.0,<2)", "mysqlclient (>=1.4.0)"]
mysql_connector = ["mysql-connector-python"]
oracle = ["cx-oracle (>=7,<8)", "cx-oracle (>=7)"]
postgresql = ["psycopg2 (>=2.7)"]
postgresql_asyncpg = ["greenlet (!=0.4.17)", "asyncpg"]
postgresql_pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"]
postgresql_psycopg2binary = ["psycopg2-binary"]
postgresql_psycopg2cffi = ["psycopg2cffi"]
pymysql = ["pymysql (<1)", "pymysql"]
sqlcipher = ["sqlcipher3-binary"]

[[package]]
name = "starlette"
version = "0.25.0"
description = "The little ASGI library that shines."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
anyio = ">=3.4.0,<5"

[package.extras]
full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"]

[[package]]
name = "tenacity"
version = "8.2.2"
description = "Retry code until it succeeds"
category = "main"
optional = false
python-versions = ">=3.6"

[package.extras]
doc = ["reno", "sphinx", "tornado (>=4.5)"]

[[package]]
name = "toml"
version = "0.10.2"
description = "Python Library for Tom's Obvious, Minimal Language"
category = "dev"
optional = false
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"

[[package]]
name = "tomli"
version = "2.0.1"
description = "A lil' TOML parser"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "tqdm"
version = "4.65.0"
description = "Fast, Extensible Progress Meter"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
colorama = {version = "*", markers = "platform_system == \"Windows\""}

[package.extras]
dev = ["py-make (>=0.1.0)", "twine", "wheel"]
notebook = ["ipywidgets (>=6)"]
slack = ["slack-sdk"]
telegram = ["requests"]

[[package]]
name = "twilio"
version = "7.17.0"
description = "Twilio API client and TwiML generator"
category = "main"
optional = false
python-versions = ">=3.6.0"

[package.dependencies]
PyJWT = ">=2.0.0,<3.0.0"
pytz = "*"
requests = ">=2.0.0"

[[package]]
name = "typing-extensions"
version = "3.10.0.2"
description = "Backported and Experimental Type Hints for Python 3.5+"
category = "main"
optional = false
python-versions = "*"

[[package]]
name = "typing-inspect"
version = "0.8.0"
description = "Runtime inspection utilities for typing module."
category = "main"
optional = false
python-versions = "*"

[package.dependencies]
mypy-extensions = ">=0.3.0"
typing-extensions = ">=3.7.4"

[[package]]
name = "ujson"
version = "5.7.0"
description = "Ultra fast JSON encoder and decoder for Python"
category = "dev"
optional = false
python-versions = ">=3.7"

[[package]]
name = "urllib3"
version = "1.26.14"
description = "HTTP library with thread-safe connection pooling, file post, and more."
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*"

[package.extras]
brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"]
secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "urllib3-secure-extra", "ipaddress"]
socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]

[[package]]
name = "uvicorn"
version = "0.20.0"
description = "The lightning-fast ASGI server."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
click = ">=7.0"
h11 = ">=0.8"

[package.extras]
standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"]

[[package]]
name = "vocode"
version = "0.1.65"
description = "The all-in-one voice SDK"
category = "main"
optional = false
python-versions = ">=3.9,<4.0"

[package.dependencies]
aiohttp = "3.8.4"
aiosignal = "1.3.1"
anyio = "3.6.2"
async-timeout = "4.0.2"
attrs = "22.2.0"
azure-cognitiveservices-speech = "1.25.0"
cachetools = "5.3.0"
certifi = "2022.12.7"
cffi = "1.15.1"
charset-normalizer = "3.0.1"
click = "8.1.3"
dataclasses-json = "0.5.7"
decorator = "5.1.1"
fastapi = "0.92.0"
frozenlist = "1.3.3"
google-api-core = "2.11.0"
google-auth = "2.16.3"
google-cloud-speech = "2.17.3"
google-cloud-texttospeech = "2.14.1"
googleapis-common-protos = "1.59.0"
grpcio = "1.51.3"
grpcio-status = "1.51.3"
h11 = "0.14.0"
idna = "3.4"
jinja2 = "3.1.2"
joblib = "1.2.0"
langchain = "0.0.117"
markupsafe = "2.1.2"
marshmallow = "3.19.0"
marshmallow-enum = "1.5.1"
mccabe = "0.7.0"
multidict = "6.0.4"
mypy-extensions = "1.0.0"
nltk = "3.8.1"
numpy = "1.24.2"
openai = "0.27.2"
packaging = "23.0"
pathspec = "0.11.0"
platformdirs = "3.1.0"
ply = "3.11"
proto-plus = "1.22.2"
protobuf = "4.22.1"
pyasn1 = "0.4.8"
pyasn1-modules = "0.2.8"
pycodestyle = "2.10.0"
pycparser = "2.21"
pydantic = ">=1.9.0"
pyflakes = ">=2.5.0"
pyjwt = "2.6.0"
python-dotenv = "0.21.1"
python-multipart = "0.0.6"
pytz = "2022.7.1"
pyyaml = "6.0"
redis = "4.5.3"
regex = "2023.3.23"
requests = "2.28.2"
rsa = "4.9"
six = "1.16.0"
sniffio = "1.3.0"
sqlalchemy = "1.4.47"
starlette = "0.25.0"
tenacity = "8.2.2"
tomli = "2.0.1"
tqdm = "4.65.0"
twilio = "7.17.0"
typing-extensions = ">=3.10.0.2"
typing-inspect = "0.8.0"
urllib3 = "1.26.14"
uvicorn = "0.20.0"
websockets = "10.4"
yarl = "1.8.2"

[package.extras]
io = ["sounddevice (==0.4.6)", "pyaudio (==0.2.13)", "pydub (==0.25.1)"]

[[package]]
name = "websockets"
version = "10.4"
description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
category = "main"
optional = false
python-versions = ">=3.7"

[[package]]
name = "werkzeug"
version = "2.2.2"
description = "The comprehensive WSGI web application library."
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
MarkupSafe = ">=2.1.1"

[package.extras]
watchdog = ["watchdog"]

[[package]]
name = "whatthepatch"
version = "1.0.3"
description = "A patch parsing and application library."
category = "dev"
optional = false
python-versions = ">=3.7"

[[package]]
name = "yapf"
version = "0.32.0"
description = "A formatter for Python code."
category = "dev"
optional = false
python-versions = "*"

[[package]]
name = "yarl"
version = "1.8.2"
description = "Yet another URL library"
category = "main"
optional = false
python-versions = ">=3.7"

[package.dependencies]
idna = ">=2.0"
multidict = ">=4.0"

[metadata]
lock-version = "1.1"
python-versions = ">=3.10.0,<3.11"
content-hash = "259380ab7129dd06b74a1539cf7a1b235b7d98ac5407ea975719180d39643fb5"

[metadata.files]
aiohttp = []
aiosignal = []
anyio = []
argon2-cffi = []
argon2-cffi-bindings = []
async-timeout = []
attrs = []
azure-cognitiveservices-speech = []
cachetools = []
certifi = []
cffi = []
charset-normalizer = []
click = []
colorama = []
cryptography = []
dataclasses-json = []
debugpy = []
decorator = []
fastapi = []
flask = []
frozenlist = []
google-api-core = []
google-auth = []
google-cloud-speech = []
google-cloud-texttospeech = []
googleapis-common-protos = []
greenlet = []
grpcio = []
grpcio-status = []
h11 = []
idna = []
iso8601 = []
itsdangerous = []
jedi = []
jinja2 = []
joblib = []
langchain = []
markupsafe = []
marshmallow = []
marshmallow-enum = []
mccabe = []
multidict = []
mypy-extensions = []
nltk = []
numpy = []
openai = []
packaging = []
parso = []
passlib = []
pathspec = []
platformdirs = []
pluggy = []
ply = []
proto-plus = []
protobuf = []
pyasn1 = []
pyasn1-modules = []
pycodestyle = []
pycparser = []
pycryptodomex = []
pydantic = []
pyflakes = []
pyjwt = []
pyseto = []
python-dotenv = []
python-lsp-jsonrpc = []
python-multipart = []
pytoolconfig = []
pytz = []
pyyaml = []
redis = []
regex = []
replit = []
replit-python-lsp-server = []
requests = []
rope = []
rsa = []
six = []
sniffio = []
sqlalchemy = []
starlette = []
tenacity = []
toml = []
tomli = []
tqdm = []
twilio = []
typing-extensions = []
typing-inspect = []
ujson = []
urllib3 = []
uvicorn = []
vocode = []
websockets = []
werkzeug = []
whatthepatch = []
yapf = []
yarl = []

pyproject.toml

[tool.poetry]
name = "python-template"
version = "0.1.0"
description = ""
authors = ["Your Name <[email protected]>"]

[tool.poetry.dependencies]
python = ">=3.10.0,<3.11"
numpy = "^1.22.2"
replit = "^3.2.4"
Flask = "^2.2.0"
urllib3 = "^1.26.12"
vocode = "0.1.65"

[tool.poetry.dev-dependencies]
debugpy = "^1.6.2"
replit-python-lsp-server = {extras = ["yapf", "rope", "pyflakes"], version = "^1.5.9"}

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"