From f4d580de30137379719b80ed802e90c24579f3fe Mon Sep 17 00:00:00 2001 From: Mrunmay Shelar Date: Thu, 2 Nov 2023 10:55:39 +0530 Subject: [PATCH] chore: added llm sample --- usecases/llm/Dockerfile | 17 + usecases/llm/LICENSE | 21 + usecases/llm/README.md | 12 + usecases/llm/app.py | 211 ++ usecases/llm/chainlit.md | 31 + usecases/llm/data/BankFAQs.xlsx | Bin 0 -> 171096 bytes usecases/llm/docker-compose.yml | 13 + usecases/llm/dozer-config.yaml | 63 + usecases/llm/poetry.lock | 4124 +++++++++++++++++++++++++++++++ usecases/llm/pyproject.toml | 26 + usecases/llm/requirements.txt | 11 + 11 files changed, 4529 insertions(+) create mode 100644 usecases/llm/Dockerfile create mode 100644 usecases/llm/LICENSE create mode 100644 usecases/llm/README.md create mode 100644 usecases/llm/app.py create mode 100644 usecases/llm/chainlit.md create mode 100644 usecases/llm/data/BankFAQs.xlsx create mode 100644 usecases/llm/docker-compose.yml create mode 100644 usecases/llm/dozer-config.yaml create mode 100644 usecases/llm/poetry.lock create mode 100644 usecases/llm/pyproject.toml create mode 100644 usecases/llm/requirements.txt diff --git a/usecases/llm/Dockerfile b/usecases/llm/Dockerfile new file mode 100644 index 00000000..b16fda19 --- /dev/null +++ b/usecases/llm/Dockerfile @@ -0,0 +1,17 @@ +# Use the official Python 3.9 image as the base image +FROM python:3.9 + +# Set the working directory within the container +WORKDIR /usr/src/app + +# Copy the requirements.txt file into the container +COPY requirements.txt . + +# Install dependencies from requirements.txt +RUN pip install --no-cache-dir -r requirements.txt + +# Copy your application files into the container +COPY . . + +EXPOSE 8000 +CMD ["python", "-m", "chainlit", "run", "app.py", "--port" ,"8000"] \ No newline at end of file diff --git a/usecases/llm/LICENSE b/usecases/llm/LICENSE new file mode 100644 index 00000000..90a90bbd --- /dev/null +++ b/usecases/llm/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Mrunmay Shelar + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/usecases/llm/README.md b/usecases/llm/README.md new file mode 100644 index 00000000..7b00aafd --- /dev/null +++ b/usecases/llm/README.md @@ -0,0 +1,12 @@ +# Hyper-personalized chatbots using LLMs, Dozer and Vector Databases for Banking and Finance + +In this example, we will be using Dozer along with Chainlit, Langchain and Pinecone. + +### Pre-requisites + +1. Pinecone account +2. OpenAI API key +3. Python 3.9/ Docker + +### Setup + diff --git a/usecases/llm/app.py b/usecases/llm/app.py new file mode 100644 index 00000000..dfb2037d --- /dev/null +++ b/usecases/llm/app.py @@ -0,0 +1,211 @@ +import chainlit as cl +import os +from langchain.prompts import PromptTemplate +from langchain.chains import LLMChain +from langchain.embeddings import HuggingFaceEmbeddings +from langchain.schema import HumanMessage +## For Vector DB +import pinecone +import uuid +from langchain.vectorstores import Pinecone +from langchain.chains.conversation.memory import ConversationBufferWindowMemory +from langchain.chains import RetrievalQA +from langchain.agents import Tool +#from langchain import PromptTemplate, HuggingFaceHub, LLMChain +from langchain.embeddings import HuggingFaceEmbeddings +from langchain.agents import initialize_agent +from langchain.embeddings.openai import OpenAIEmbeddings +from langchain.chat_models import ChatOpenAI +from langchain.chains import RetrievalQAWithSourcesChain +from langchain.prompts.chat import ChatPromptTemplate,HumanMessagePromptTemplate,SystemMessagePromptTemplate +from chainlit import user_session +import os +from pydozer.api import ApiClient +from langchain.agents import ConversationalChatAgent, AgentExecutor + + +### Dozer + +DOZER_CLOUD_HOST = "data.getdozer.io:443" + +def get_api_client(app_id=None, token=None): + return ApiClient("financial_profile", url=DOZER_CLOUD_HOST, app_id=app_id, + secure=True, token=token) if app_id else ApiClient("financial_profile", url="localhost:80") + + +customer_client = get_api_client(app_id=os.environ.get("DOZER_APP_ID"), token=os.environ.get("DOZER_TOKEN")) + +def getCustomerData(input): + data = customer_client.query({"$filter": {"id":input}}) + rec = data.records[0].record + id = rec.values[0].int_value + name = rec.values[1].string_value + income = rec.values[2].int_value + age = rec.values[3].int_value + dependents = rec.values[4].int_value + address = rec.values[5].string_value + prob = rec.values[6].float_value + credit_amt = rec.values[7].int_value + repay_status = rec.values[8].float_value + util_ratio = rec.values[9].float_value + + + return [id,name,income,age,dependents,credit_amt,repay_status,util_ratio,address, prob] + + + +#user_env = user_session.get(".env") +OPEN_API_KEY = os.environ.get("OPENAI_API_KEY") +PINECONE_API_KEY = os.environ.get("PINECONE_API_KEY") +PINECONE_ENV = os.environ.get("PINE_ENV") + # platform.openai.com +model_name = 'text-embedding-ada-002' + + +embed = OpenAIEmbeddings( + model=model_name, + openai_api_key=OPEN_API_KEY +) + +# find ENV (cloud region) next to API key in console +index_name = 'langchain-retrieval-agent' +pinecone.init( + api_key=PINECONE_API_KEY, + environment=PINECONE_ENV +) + + +#embeddings = OpenAIEmbeddings() + + +text_field = "Answer" +index = pinecone.Index('langchain-retrieval-agent') +# switch back to normal index for langchain +#index = pinecone.Index(index_name) + +vectorstore = Pinecone( + index, embed.embed_query, text_field +) + +llm = ChatOpenAI( + openai_api_key = OPEN_API_KEY, + model_name='gpt-4', + temperature=0.0 +) + +conversational_memory = ConversationBufferWindowMemory( + memory_key='chat_history', + k=5, + return_messages=True +) +# retrieval qa chain +chain = RetrievalQA.from_chain_type( + llm=llm, + chain_type="stuff", + retriever=vectorstore.as_retriever() +) + +def setName(userName): + global name + name = userName + +def customerProfile(input): + data = getCustomerData(int(input)) + id = data[0] + name1 = data[1] + income = data[2] + age= data[3] + dependents= data[4] + address= data[5] + prob = data[6] + credit_amt= data[7] + repay_status= data[8] + util_ratio= data[9] + + + return ( f"ID = {id} ,name = {name1} ,age = {age}, income = {income}, dependents = {dependents},repay_status={repay_status}, credit utilisation ratio ={util_ratio} ,address={address}, available credit={credit_amt}, probability of default = {prob} ") + + +tools = [ + Tool( + name='Knowledge Base', + func=chain.run, + description=( + "Useful when you need general information about bank policies and bank offerings. "\ + 'use this tool when answering general knowledge queries to get '\ + 'more information about the topic' + ) + ), + Tool( + name = 'Customer Data', + func = customerProfile, + description=( + "Useful when you need customer data to decide eligibility for a particular credit card. " + "Use to check the probability of default and available balance to use it for eligibility" + ) + ) +] + + +agent = initialize_agent( + agent='chat-conversational-react-description', + tools=tools, + llm=llm, + verbose=True, + max_iterations=5, + early_stopping_method='generate', + memory=conversational_memory +) + + +global res +@cl.on_chat_start + +async def start(): + intro = "Hi there, I am an assistant for Bank A. I am here to assist you with all your banking needs! Please enter your id: " + + res = await cl.AskUserMessage(content=intro,timeout=45,raise_on_timeout=True).send() + + id = int(res['content']) + greeting = f"Hi {res['content']}. What brings you here?" + await cl.Message(content=greeting).send() + setName(res['content']) + # global credit + # credit = getCredit(int(res['content'])) + global customerinfo + customerinfo = customerProfile(int(res['content']) ) + print(customerinfo) + + agent = ConversationalChatAgent.from_llm_and_tools( + llm=llm, + tools=tools, + system_message = f"You have customer info of a customer which is as follows {customerinfo}. You have to use this information along with Knowledge base to decide if the customer is eligible for a credit card or not.", + verbose=True, + max_iterations=5, + early_stopping_method='generate', + memory=conversational_memory + + ) + + global agent_chain + agent_chain = AgentExecutor.from_agent_and_tools( + agent = agent, + tools = tools, + verbose = True, + max_iterations = 5, + early_stopping_method = 'generate', + memory = conversational_memory + + ) + cl.user_session.set("chain", agent_chain) + + + +@cl.on_message +async def main(message: str): + agent_chain = cl.user_session.get("chain") + response = await cl.make_async(agent_chain.run)(message.content) + + await cl.Message( + content=response, + ).send() \ No newline at end of file diff --git a/usecases/llm/chainlit.md b/usecases/llm/chainlit.md new file mode 100644 index 00000000..180f8e37 --- /dev/null +++ b/usecases/llm/chainlit.md @@ -0,0 +1,31 @@ +# Welcome to GoldenGate Bank ! 🏦💵 + +Hi there, Customer ! 👋 We're excited to have you on board. GoldenGate Bank has been serving customers since 1970 . With a commitment to excellence, we have grown into a reputable financial institution, providing a wide range of services to meet your banking needs. + +# Our Services 🎄🎄🎁 + +At 'GoldenGate Bank', we offer a comprehensive range of banking services to cater to your financial requirements. Our services include: + +**Savings Accounts**: Choose from a variety of savings accounts with competitive interest rates and personalized features. +**Current Accounts**: Our current accounts are designed to support businesses and individuals with seamless transaction capabilities. +**Fixed Deposits**: Benefit from attractive interest rates and flexible tenure options with our fixed deposit accounts. + +# Credit Cards 💳💳 + +Experience the convenience and benefits of GoldenGate Bridge credit cards, tailored to suit your lifestyle and spending habits. We offer the following credit cards: + +1. **Rewards Card** 📦🎁 +Earn reward points on every purchase. +Eligibility: Minimum monthly income of $X,XX and a credit score of [Credit Score Requirement]. + +2. **Travel Card** ✈️🧳 +Enjoy exclusive travel perks and offers. +Eligibility: Minimum monthly income of $X,XX and a credit score of [Credit Score Requirement]. + +3. **Cashback Card** 💵💵 +Get cashback on eligible purchases. +Eligibility: Minimum monthly income of $X,XX and a credit score of [Credit Score Requirement]. + +4. **Premium Card** 💰💲 +Access premium benefits, including airport lounge access and concierge services. +Eligibility: Minimum monthly income of $X,XXX and a credit score of [Credit Score Requirement]. \ No newline at end of file diff --git a/usecases/llm/data/BankFAQs.xlsx b/usecases/llm/data/BankFAQs.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..ae52987428060b36e5b369d857d84bb64fb21afb GIT binary patch literal 171096 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
OGiy;<3Pm7T|f#9 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�bYa5-m@~SkB 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 literal 0 HcmV?d00001 diff --git a/usecases/llm/docker-compose.yml b/usecases/llm/docker-compose.yml new file mode 100644 index 00000000..f9b0b92c --- /dev/null +++ b/usecases/llm/docker-compose.yml @@ -0,0 +1,13 @@ +version: '4.25' + +services: + app: + build: + context: . + dockerfile: Dockerfile + volumes: + - .:/usr/src/app + env_file: + - .env + ports: + - '8000:8000' \ No newline at end of file diff --git a/usecases/llm/dozer-config.yaml b/usecases/llm/dozer-config.yaml new file mode 100644 index 00000000..a2466990 --- /dev/null +++ b/usecases/llm/dozer-config.yaml @@ -0,0 +1,63 @@ +app_name: llm-sample +version: 1 +connections: + - name: onnx + config : !Postgres + user: "{{PG_USER}}" + password: "{{PG_PASSWORD}}" + host: "{{PG_HOST}}" + port: 5432 + database: "{{PG_DB}}" + - name: s3data + config: !S3Storage + details: + access_key_id: "{{AWS_ACCESS_KEY}}" + secret_access_key: "{{AWS_SECRET_KEY}}" + region: "{{AWS_REGION_S3}}" + bucket_name: "{{AWS_BUCKET_NAME}}" + tables: + - !Table + name: customers + config: !CSV + path: customer_data/ + extension: .csv + +sources: + - name: credit + table_name: cred2 + connection: onnx + + - name: data + table_name: customers + connection: s3data + +sql: | + + + WITH template AS + + (SELECT c.ID as ID, c.Name as name,c.Income as total_income, c.Age as age,c.Dependents as dependents, c.address as address FROM data c ), + + res1 AS ( SELECT torch_jit( LIMIT_BAL, SEX, EDUCATION, MARRIAGE, AGE, PAY_AMT6,BILL_AMT6,PAY_6,PAY_AMT5,BILL_AMT5,PAY_5,PAY_AMT4,BILL_AMT4,PAY_4, + PAY_AMT3,BILL_AMT3,PAY_3, + PAY_AMT2,BILL_AMT2,PAY_2, + PAY_AMT1,BILL_AMT1,PAY_0) as result, ID as id , LIMIT_BAL, + (PAY_0 + PAY_2 + PAY_3 + PAY_4 + PAY_5 + PAY_6)/5 as avg_repayment_status, + (BILL_AMT1+BILL_AMT2+BILL_AMT3+BILL_AMT4+BILL_AMT5+BILL_AMT6)/(LIMIT_BAL * 6) as utilization_ratio + from credit ) + SELECT ID as id, name, total_income, age, dependents, address, result, LIMIT_BAL as avail_credit, avg_repayment_status, utilization_ratio + INTO customer_profile + FROM template t + JOIN res1 r + ON t.ID = r.id; + +endpoints: + - name: financial_profile + path: /customers + table_name: customer_profile + + +udfs: + - name: torch_jit + config: !Onnx + path: ./sequential_31.onnx \ No newline at end of file diff --git a/usecases/llm/poetry.lock b/usecases/llm/poetry.lock new file mode 100644 index 00000000..61e60dfb --- /dev/null +++ b/usecases/llm/poetry.lock @@ -0,0 +1,4124 @@ +# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. + +[[package]] +name = "aiofiles" +version = "23.2.1" +description = "File support for asyncio." +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiofiles-23.2.1-py3-none-any.whl", hash = "sha256:19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107"}, + {file = "aiofiles-23.2.1.tar.gz", hash = "sha256:84ec2218d8419404abcb9f0c02df3f34c6e0a68ed41072acfb1cef5cbc29051a"}, +] + +[[package]] +name = "aiohttp" +version = "3.8.6" +description = "Async http client/server framework (asyncio)" +optional = false +python-versions = ">=3.6" +files = [ + {file = "aiohttp-3.8.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:41d55fc043954cddbbd82503d9cc3f4814a40bcef30b3569bc7b5e34130718c1"}, + {file = "aiohttp-3.8.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1d84166673694841d8953f0a8d0c90e1087739d24632fe86b1a08819168b4566"}, + {file = "aiohttp-3.8.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:253bf92b744b3170eb4c4ca2fa58f9c4b87aeb1df42f71d4e78815e6e8b73c9e"}, + {file = "aiohttp-3.8.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3fd194939b1f764d6bb05490987bfe104287bbf51b8d862261ccf66f48fb4096"}, + {file = "aiohttp-3.8.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6c5f938d199a6fdbdc10bbb9447496561c3a9a565b43be564648d81e1102ac22"}, + {file = "aiohttp-3.8.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2817b2f66ca82ee699acd90e05c95e79bbf1dc986abb62b61ec8aaf851e81c93"}, + {file = "aiohttp-3.8.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0fa375b3d34e71ccccf172cab401cd94a72de7a8cc01847a7b3386204093bb47"}, + {file = "aiohttp-3.8.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9de50a199b7710fa2904be5a4a9b51af587ab24c8e540a7243ab737b45844543"}, + {file = "aiohttp-3.8.6-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e1d8cb0b56b3587c5c01de3bf2f600f186da7e7b5f7353d1bf26a8ddca57f965"}, + {file = "aiohttp-3.8.6-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8e31e9db1bee8b4f407b77fd2507337a0a80665ad7b6c749d08df595d88f1cf5"}, + {file = "aiohttp-3.8.6-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:7bc88fc494b1f0311d67f29fee6fd636606f4697e8cc793a2d912ac5b19aa38d"}, + {file = "aiohttp-3.8.6-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ec00c3305788e04bf6d29d42e504560e159ccaf0be30c09203b468a6c1ccd3b2"}, + {file = "aiohttp-3.8.6-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ad1407db8f2f49329729564f71685557157bfa42b48f4b93e53721a16eb813ed"}, + {file = "aiohttp-3.8.6-cp310-cp310-win32.whl", hash = "sha256:ccc360e87341ad47c777f5723f68adbb52b37ab450c8bc3ca9ca1f3e849e5fe2"}, + {file = "aiohttp-3.8.6-cp310-cp310-win_amd64.whl", hash = "sha256:93c15c8e48e5e7b89d5cb4613479d144fda8344e2d886cf694fd36db4cc86865"}, + {file = "aiohttp-3.8.6-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6e2f9cc8e5328f829f6e1fb74a0a3a939b14e67e80832975e01929e320386b34"}, + {file = "aiohttp-3.8.6-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e6a00ffcc173e765e200ceefb06399ba09c06db97f401f920513a10c803604ca"}, + {file = "aiohttp-3.8.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:41bdc2ba359032e36c0e9de5a3bd00d6fb7ea558a6ce6b70acedf0da86458321"}, + {file = "aiohttp-3.8.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14cd52ccf40006c7a6cd34a0f8663734e5363fd981807173faf3a017e202fec9"}, + {file = "aiohttp-3.8.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2d5b785c792802e7b275c420d84f3397668e9d49ab1cb52bd916b3b3ffcf09ad"}, + {file = "aiohttp-3.8.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1bed815f3dc3d915c5c1e556c397c8667826fbc1b935d95b0ad680787896a358"}, + {file = "aiohttp-3.8.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96603a562b546632441926cd1293cfcb5b69f0b4159e6077f7c7dbdfb686af4d"}, + {file = "aiohttp-3.8.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d76e8b13161a202d14c9584590c4df4d068c9567c99506497bdd67eaedf36403"}, + {file = "aiohttp-3.8.6-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e3f1e3f1a1751bb62b4a1b7f4e435afcdade6c17a4fd9b9d43607cebd242924a"}, + {file = "aiohttp-3.8.6-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:76b36b3124f0223903609944a3c8bf28a599b2cc0ce0be60b45211c8e9be97f8"}, + {file = "aiohttp-3.8.6-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:a2ece4af1f3c967a4390c284797ab595a9f1bc1130ef8b01828915a05a6ae684"}, + {file = "aiohttp-3.8.6-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:16d330b3b9db87c3883e565340d292638a878236418b23cc8b9b11a054aaa887"}, + {file = "aiohttp-3.8.6-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:42c89579f82e49db436b69c938ab3e1559e5a4409eb8639eb4143989bc390f2f"}, + {file = "aiohttp-3.8.6-cp311-cp311-win32.whl", hash = "sha256:efd2fcf7e7b9d7ab16e6b7d54205beded0a9c8566cb30f09c1abe42b4e22bdcb"}, + {file = "aiohttp-3.8.6-cp311-cp311-win_amd64.whl", hash = "sha256:3b2ab182fc28e7a81f6c70bfbd829045d9480063f5ab06f6e601a3eddbbd49a0"}, + {file = "aiohttp-3.8.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:fdee8405931b0615220e5ddf8cd7edd8592c606a8e4ca2a00704883c396e4479"}, + {file = "aiohttp-3.8.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d25036d161c4fe2225d1abff2bd52c34ed0b1099f02c208cd34d8c05729882f0"}, + {file = "aiohttp-3.8.6-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d791245a894be071d5ab04bbb4850534261a7d4fd363b094a7b9963e8cdbd31"}, + {file = "aiohttp-3.8.6-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0cccd1de239afa866e4ce5c789b3032442f19c261c7d8a01183fd956b1935349"}, + {file = "aiohttp-3.8.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f13f60d78224f0dace220d8ab4ef1dbc37115eeeab8c06804fec11bec2bbd07"}, + {file = "aiohttp-3.8.6-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8a9b5a0606faca4f6cc0d338359d6fa137104c337f489cd135bb7fbdbccb1e39"}, + {file = "aiohttp-3.8.6-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:13da35c9ceb847732bf5c6c5781dcf4780e14392e5d3b3c689f6d22f8e15ae31"}, + {file = "aiohttp-3.8.6-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:4d4cbe4ffa9d05f46a28252efc5941e0462792930caa370a6efaf491f412bc66"}, + {file = "aiohttp-3.8.6-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:229852e147f44da0241954fc6cb910ba074e597f06789c867cb7fb0621e0ba7a"}, + {file = "aiohttp-3.8.6-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:713103a8bdde61d13490adf47171a1039fd880113981e55401a0f7b42c37d071"}, + {file = "aiohttp-3.8.6-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:45ad816b2c8e3b60b510f30dbd37fe74fd4a772248a52bb021f6fd65dff809b6"}, + {file = "aiohttp-3.8.6-cp36-cp36m-win32.whl", hash = "sha256:2b8d4e166e600dcfbff51919c7a3789ff6ca8b3ecce16e1d9c96d95dd569eb4c"}, + {file = "aiohttp-3.8.6-cp36-cp36m-win_amd64.whl", hash = "sha256:0912ed87fee967940aacc5306d3aa8ba3a459fcd12add0b407081fbefc931e53"}, + {file = "aiohttp-3.8.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e2a988a0c673c2e12084f5e6ba3392d76c75ddb8ebc6c7e9ead68248101cd446"}, + {file = "aiohttp-3.8.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebf3fd9f141700b510d4b190094db0ce37ac6361a6806c153c161dc6c041ccda"}, + {file = "aiohttp-3.8.6-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3161ce82ab85acd267c8f4b14aa226047a6bee1e4e6adb74b798bd42c6ae1f80"}, + {file = "aiohttp-3.8.6-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d95fc1bf33a9a81469aa760617b5971331cdd74370d1214f0b3109272c0e1e3c"}, + {file = "aiohttp-3.8.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c43ecfef7deaf0617cee936836518e7424ee12cb709883f2c9a1adda63cc460"}, + {file = "aiohttp-3.8.6-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca80e1b90a05a4f476547f904992ae81eda5c2c85c66ee4195bb8f9c5fb47f28"}, + {file = "aiohttp-3.8.6-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:90c72ebb7cb3a08a7f40061079817133f502a160561d0675b0a6adf231382c92"}, + {file = "aiohttp-3.8.6-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bb54c54510e47a8c7c8e63454a6acc817519337b2b78606c4e840871a3e15349"}, + {file = "aiohttp-3.8.6-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:de6a1c9f6803b90e20869e6b99c2c18cef5cc691363954c93cb9adeb26d9f3ae"}, + {file = "aiohttp-3.8.6-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:a3628b6c7b880b181a3ae0a0683698513874df63783fd89de99b7b7539e3e8a8"}, + {file = "aiohttp-3.8.6-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:fc37e9aef10a696a5a4474802930079ccfc14d9f9c10b4662169671ff034b7df"}, + {file = "aiohttp-3.8.6-cp37-cp37m-win32.whl", hash = "sha256:f8ef51e459eb2ad8e7a66c1d6440c808485840ad55ecc3cafefadea47d1b1ba2"}, + {file = "aiohttp-3.8.6-cp37-cp37m-win_amd64.whl", hash = "sha256:b2fe42e523be344124c6c8ef32a011444e869dc5f883c591ed87f84339de5976"}, + {file = "aiohttp-3.8.6-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:9e2ee0ac5a1f5c7dd3197de309adfb99ac4617ff02b0603fd1e65b07dc772e4b"}, + {file = "aiohttp-3.8.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:01770d8c04bd8db568abb636c1fdd4f7140b284b8b3e0b4584f070180c1e5c62"}, + {file = "aiohttp-3.8.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3c68330a59506254b556b99a91857428cab98b2f84061260a67865f7f52899f5"}, + {file = "aiohttp-3.8.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89341b2c19fb5eac30c341133ae2cc3544d40d9b1892749cdd25892bbc6ac951"}, + {file = "aiohttp-3.8.6-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:71783b0b6455ac8f34b5ec99d83e686892c50498d5d00b8e56d47f41b38fbe04"}, + {file = "aiohttp-3.8.6-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f628dbf3c91e12f4d6c8b3f092069567d8eb17814aebba3d7d60c149391aee3a"}, + {file = "aiohttp-3.8.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b04691bc6601ef47c88f0255043df6f570ada1a9ebef99c34bd0b72866c217ae"}, + {file = "aiohttp-3.8.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7ee912f7e78287516df155f69da575a0ba33b02dd7c1d6614dbc9463f43066e3"}, + {file = "aiohttp-3.8.6-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9c19b26acdd08dd239e0d3669a3dddafd600902e37881f13fbd8a53943079dbc"}, + {file = "aiohttp-3.8.6-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:99c5ac4ad492b4a19fc132306cd57075c28446ec2ed970973bbf036bcda1bcc6"}, + {file = "aiohttp-3.8.6-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:f0f03211fd14a6a0aed2997d4b1c013d49fb7b50eeb9ffdf5e51f23cfe2c77fa"}, + {file = "aiohttp-3.8.6-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:8d399dade330c53b4106160f75f55407e9ae7505263ea86f2ccca6bfcbdb4921"}, + {file = "aiohttp-3.8.6-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:ec4fd86658c6a8964d75426517dc01cbf840bbf32d055ce64a9e63a40fd7b771"}, + {file = "aiohttp-3.8.6-cp38-cp38-win32.whl", hash = "sha256:33164093be11fcef3ce2571a0dccd9041c9a93fa3bde86569d7b03120d276c6f"}, + {file = "aiohttp-3.8.6-cp38-cp38-win_amd64.whl", hash = "sha256:bdf70bfe5a1414ba9afb9d49f0c912dc524cf60141102f3a11143ba3d291870f"}, + {file = "aiohttp-3.8.6-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d52d5dc7c6682b720280f9d9db41d36ebe4791622c842e258c9206232251ab2b"}, + {file = "aiohttp-3.8.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4ac39027011414dbd3d87f7edb31680e1f430834c8cef029f11c66dad0670aa5"}, + {file = "aiohttp-3.8.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3f5c7ce535a1d2429a634310e308fb7d718905487257060e5d4598e29dc17f0b"}, + {file = "aiohttp-3.8.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b30e963f9e0d52c28f284d554a9469af073030030cef8693106d918b2ca92f54"}, + {file = "aiohttp-3.8.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:918810ef188f84152af6b938254911055a72e0f935b5fbc4c1a4ed0b0584aed1"}, + {file = "aiohttp-3.8.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:002f23e6ea8d3dd8d149e569fd580c999232b5fbc601c48d55398fbc2e582e8c"}, + {file = "aiohttp-3.8.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4fcf3eabd3fd1a5e6092d1242295fa37d0354b2eb2077e6eb670accad78e40e1"}, + {file = "aiohttp-3.8.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:255ba9d6d5ff1a382bb9a578cd563605aa69bec845680e21c44afc2670607a95"}, + {file = "aiohttp-3.8.6-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d67f8baed00870aa390ea2590798766256f31dc5ed3ecc737debb6e97e2ede78"}, + {file = "aiohttp-3.8.6-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:86f20cee0f0a317c76573b627b954c412ea766d6ada1a9fcf1b805763ae7feeb"}, + {file = "aiohttp-3.8.6-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:39a312d0e991690ccc1a61f1e9e42daa519dcc34ad03eb6f826d94c1190190dd"}, + {file = "aiohttp-3.8.6-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:e827d48cf802de06d9c935088c2924e3c7e7533377d66b6f31ed175c1620e05e"}, + {file = "aiohttp-3.8.6-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bd111d7fc5591ddf377a408ed9067045259ff2770f37e2d94e6478d0f3fc0c17"}, + {file = "aiohttp-3.8.6-cp39-cp39-win32.whl", hash = "sha256:caf486ac1e689dda3502567eb89ffe02876546599bbf915ec94b1fa424eeffd4"}, + {file = "aiohttp-3.8.6-cp39-cp39-win_amd64.whl", hash = "sha256:3f0e27e5b733803333bb2371249f41cf42bae8884863e8e8965ec69bebe53132"}, + {file = "aiohttp-3.8.6.tar.gz", hash = "sha256:b0cf2a4501bff9330a8a5248b4ce951851e415bdcce9dc158e76cfd55e15085c"}, +] + +[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 = ["Brotli", "aiodns", "cchardet"] + +[[package]] +name = "aiosignal" +version = "1.3.1" +description = "aiosignal: a list of registered asynchronous callbacks" +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, + {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, +] + +[package.dependencies] +frozenlist = ">=1.1.0" + +[[package]] +name = "anyio" +version = "3.7.1" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.7" +files = [ + {file = "anyio-3.7.1-py3-none-any.whl", hash = "sha256:91dee416e570e92c64041bd18b900d1d6fa78dff7048769ce5ac5ddad004fbb5"}, + {file = "anyio-3.7.1.tar.gz", hash = "sha256:44a3c9aba0f5defa43261a8b3efb97891f2bd7d804e0e1f56419befa1adfc780"}, +] + +[package.dependencies] +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} +idna = ">=2.8" +sniffio = ">=1.1" + +[package.extras] +doc = ["Sphinx", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme (>=1.2.2)", "sphinxcontrib-jquery"] +test = ["anyio[trio]", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (<0.22)"] + +[[package]] +name = "appdirs" +version = "1.4.4" +description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +optional = false +python-versions = "*" +files = [ + {file = "appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"}, + {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, +] + +[[package]] +name = "async-timeout" +version = "4.0.3" +description = "Timeout context manager for asyncio programs" +optional = false +python-versions = ">=3.7" +files = [ + {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"}, + {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"}, +] + +[[package]] +name = "asyncer" +version = "0.0.2" +description = "Asyncer, async and await, focused on developer experience." +optional = false +python-versions = ">=3.6.2,<4.0.0" +files = [ + {file = "asyncer-0.0.2-py3-none-any.whl", hash = "sha256:46e0e1423ce21588350ad425875e81795280b9e1f517e8a389de940b86c348bd"}, + {file = "asyncer-0.0.2.tar.gz", hash = "sha256:d546c85f3626ebbaf06bb4395db49761c902a61a6ac802b1a74133cab4f7f433"}, +] + +[package.dependencies] +anyio = ">=3.4.0,<4.0.0" + +[[package]] +name = "attrs" +version = "23.1.0" +description = "Classes Without Boilerplate" +optional = false +python-versions = ">=3.7" +files = [ + {file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"}, + {file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"}, +] + +[package.extras] +cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] +dev = ["attrs[docs,tests]", "pre-commit"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] +tests = ["attrs[tests-no-zope]", "zope-interface"] +tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] + +[[package]] +name = "backoff" +version = "2.2.1" +description = "Function decoration for backoff and retry" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "backoff-2.2.1-py3-none-any.whl", hash = "sha256:63579f9a0628e06278f7e47b7d7d5b6ce20dc65c5e96a6f3ca99a6adca0396e8"}, + {file = "backoff-2.2.1.tar.gz", hash = "sha256:03f829f5bb1923180821643f8753b0502c3b682293992485b0eef2807afa5cba"}, +] + +[[package]] +name = "bidict" +version = "0.22.1" +description = "The bidirectional mapping library for Python." +optional = false +python-versions = ">=3.7" +files = [ + {file = "bidict-0.22.1-py3-none-any.whl", hash = "sha256:6ef212238eb884b664f28da76f33f1d28b260f665fc737b413b287d5487d1e7b"}, + {file = "bidict-0.22.1.tar.gz", hash = "sha256:1e0f7f74e4860e6d0943a05d4134c63a2fad86f3d4732fb265bd79e4e856d81d"}, +] + +[package.extras] +docs = ["furo", "sphinx", "sphinx-copybutton"] +lint = ["pre-commit"] +test = ["hypothesis", "pytest", "pytest-benchmark[histogram]", "pytest-cov", "pytest-xdist", "sortedcollections", "sortedcontainers", "sphinx"] + +[[package]] +name = "boilerpy3" +version = "1.0.6" +description = "Python port of Boilerpipe, for HTML boilerplate removal and text extraction" +optional = false +python-versions = ">=3.6.*" +files = [ + {file = "boilerpy3-1.0.6-py3-none-any.whl", hash = "sha256:0203dde43291cad959d4f47663bc47c34344c1377f4914a8291841e8721234a5"}, + {file = "boilerpy3-1.0.6.tar.gz", hash = "sha256:c864c0041c3197ad8c118109b252c2c564133614e93068bf226eaf6d217304bb"}, +] + +[[package]] +name = "cattrs" +version = "23.1.2" +description = "Composable complex class support for attrs and dataclasses." +optional = false +python-versions = ">=3.7" +files = [ + {file = "cattrs-23.1.2-py3-none-any.whl", hash = "sha256:b2bb14311ac17bed0d58785e5a60f022e5431aca3932e3fc5cc8ed8639de50a4"}, + {file = "cattrs-23.1.2.tar.gz", hash = "sha256:db1c821b8c537382b2c7c66678c3790091ca0275ac486c76f3c8f3920e83c657"}, +] + +[package.dependencies] +attrs = ">=20" +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} +typing_extensions = {version = ">=4.1.0", markers = "python_version < \"3.11\""} + +[package.extras] +bson = ["pymongo (>=4.2.0,<5.0.0)"] +cbor2 = ["cbor2 (>=5.4.6,<6.0.0)"] +msgpack = ["msgpack (>=1.0.2,<2.0.0)"] +orjson = ["orjson (>=3.5.2,<4.0.0)"] +pyyaml = ["PyYAML (>=6.0,<7.0)"] +tomlkit = ["tomlkit (>=0.11.4,<0.12.0)"] +ujson = ["ujson (>=5.4.0,<6.0.0)"] + +[[package]] +name = "certifi" +version = "2023.7.22" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2023.7.22-py3-none-any.whl", hash = "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"}, + {file = "certifi-2023.7.22.tar.gz", hash = "sha256:539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082"}, +] + +[[package]] +name = "chainlit" +version = "0.7.301" +description = "A faster way to build chatbot UIs." +optional = false +python-versions = ">=3.8.1,<4.0.0" +files = [ + {file = "chainlit-0.7.301-py3-none-any.whl", hash = "sha256:ecfc6464702c574d1015f7983ebce7a233e63f5be76c565cf5819caadebd6ae7"}, + {file = "chainlit-0.7.301.tar.gz", hash = "sha256:455dd13ad3a1692a8fdfbeba3cfd4656f1dec028f0a217284a15c276867745cd"}, +] + +[package.dependencies] +aiofiles = ">=23.1.0,<24.0.0" +aiohttp = ">=3.8.4,<4.0.0" +asyncer = ">=0.0.2,<0.0.3" +click = ">=8.1.3,<9.0.0" +dataclasses_json = ">=0.5.7,<0.6.0" +fastapi = ">=0.100,<0.101" +fastapi-socketio = ">=0.0.10,<0.0.11" +filetype = ">=1.2.0,<2.0.0" +lazify = ">=0.4.0,<0.5.0" +nest-asyncio = ">=1.5.6,<2.0.0" +packaging = ">=23.1,<24.0" +prisma = ">=0.10.0,<0.11.0" +pydantic = ">=1,<3" +pyjwt = ">=2.8.0,<3.0.0" +python-dotenv = ">=1.0.0,<2.0.0" +python-graphql-client = ">=0.4.3,<0.5.0" +python-multipart = ">=0.0.6,<0.0.7" +syncer = ">=2.0.3,<3.0.0" +tomli = ">=2.0.1,<3.0.0" +uptrace = ">=1.18.0,<2.0.0" +uvicorn = ">=0.23.2,<0.24.0" +watchfiles = ">=0.20.0,<0.21.0" + +[[package]] +name = "charset-normalizer" +version = "3.3.1" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "charset-normalizer-3.3.1.tar.gz", hash = "sha256:d9137a876020661972ca6eec0766d81aef8a5627df628b664b234b73396e727e"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8aee051c89e13565c6bd366813c386939f8e928af93c29fda4af86d25b73d8f8"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:352a88c3df0d1fa886562384b86f9a9e27563d4704ee0e9d56ec6fcd270ea690"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:223b4d54561c01048f657fa6ce41461d5ad8ff128b9678cfe8b2ecd951e3f8a2"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f861d94c2a450b974b86093c6c027888627b8082f1299dfd5a4bae8e2292821"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1171ef1fc5ab4693c5d151ae0fdad7f7349920eabbaca6271f95969fa0756c2d"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28f512b9a33235545fbbdac6a330a510b63be278a50071a336afc1b78781b147"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0e842112fe3f1a4ffcf64b06dc4c61a88441c2f02f373367f7b4c1aa9be2ad5"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3f9bc2ce123637a60ebe819f9fccc614da1bcc05798bbbaf2dd4ec91f3e08846"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f194cce575e59ffe442c10a360182a986535fd90b57f7debfaa5c845c409ecc3"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:9a74041ba0bfa9bc9b9bb2cd3238a6ab3b7618e759b41bd15b5f6ad958d17605"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:b578cbe580e3b41ad17b1c428f382c814b32a6ce90f2d8e39e2e635d49e498d1"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6db3cfb9b4fcecb4390db154e75b49578c87a3b9979b40cdf90d7e4b945656e1"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:debb633f3f7856f95ad957d9b9c781f8e2c6303ef21724ec94bea2ce2fcbd056"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-win32.whl", hash = "sha256:87071618d3d8ec8b186d53cb6e66955ef2a0e4fa63ccd3709c0c90ac5a43520f"}, + {file = "charset_normalizer-3.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:e372d7dfd154009142631de2d316adad3cc1c36c32a38b16a4751ba78da2a397"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ae4070f741f8d809075ef697877fd350ecf0b7c5837ed68738607ee0a2c572cf"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:58e875eb7016fd014c0eea46c6fa92b87b62c0cb31b9feae25cbbe62c919f54d"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dbd95e300367aa0827496fe75a1766d198d34385a58f97683fe6e07f89ca3e3c"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:de0b4caa1c8a21394e8ce971997614a17648f94e1cd0640fbd6b4d14cab13a72"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:985c7965f62f6f32bf432e2681173db41336a9c2611693247069288bcb0c7f8b"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a15c1fe6d26e83fd2e5972425a772cca158eae58b05d4a25a4e474c221053e2d"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ae55d592b02c4349525b6ed8f74c692509e5adffa842e582c0f861751701a673"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:be4d9c2770044a59715eb57c1144dedea7c5d5ae80c68fb9959515037cde2008"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:851cf693fb3aaef71031237cd68699dded198657ec1e76a76eb8be58c03a5d1f"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:31bbaba7218904d2eabecf4feec0d07469284e952a27400f23b6628439439fa7"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:871d045d6ccc181fd863a3cd66ee8e395523ebfbc57f85f91f035f50cee8e3d4"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:501adc5eb6cd5f40a6f77fbd90e5ab915c8fd6e8c614af2db5561e16c600d6f3"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f5fb672c396d826ca16a022ac04c9dce74e00a1c344f6ad1a0fdc1ba1f332213"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-win32.whl", hash = "sha256:bb06098d019766ca16fc915ecaa455c1f1cd594204e7f840cd6258237b5079a8"}, + {file = "charset_normalizer-3.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:8af5a8917b8af42295e86b64903156b4f110a30dca5f3b5aedea123fbd638bff"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:7ae8e5142dcc7a49168f4055255dbcced01dc1714a90a21f87448dc8d90617d1"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5b70bab78accbc672f50e878a5b73ca692f45f5b5e25c8066d748c09405e6a55"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5ceca5876032362ae73b83347be8b5dbd2d1faf3358deb38c9c88776779b2e2f"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34d95638ff3613849f473afc33f65c401a89f3b9528d0d213c7037c398a51296"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9edbe6a5bf8b56a4a84533ba2b2f489d0046e755c29616ef8830f9e7d9cf5728"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f6a02a3c7950cafaadcd46a226ad9e12fc9744652cc69f9e5534f98b47f3bbcf"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10b8dd31e10f32410751b3430996f9807fc4d1587ca69772e2aa940a82ab571a"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edc0202099ea1d82844316604e17d2b175044f9bcb6b398aab781eba957224bd"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b891a2f68e09c5ef989007fac11476ed33c5c9994449a4e2c3386529d703dc8b"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:71ef3b9be10070360f289aea4838c784f8b851be3ba58cf796262b57775c2f14"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:55602981b2dbf8184c098bc10287e8c245e351cd4fdcad050bd7199d5a8bf514"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:46fb9970aa5eeca547d7aa0de5d4b124a288b42eaefac677bde805013c95725c"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:520b7a142d2524f999447b3a0cf95115df81c4f33003c51a6ab637cbda9d0bf4"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-win32.whl", hash = "sha256:8ec8ef42c6cd5856a7613dcd1eaf21e5573b2185263d87d27c8edcae33b62a61"}, + {file = "charset_normalizer-3.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:baec8148d6b8bd5cee1ae138ba658c71f5b03e0d69d5907703e3e1df96db5e41"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:63a6f59e2d01310f754c270e4a257426fe5a591dc487f1983b3bbe793cf6bac6"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d6bfc32a68bc0933819cfdfe45f9abc3cae3877e1d90aac7259d57e6e0f85b1"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4f3100d86dcd03c03f7e9c3fdb23d92e32abbca07e7c13ebd7ddfbcb06f5991f"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39b70a6f88eebe239fa775190796d55a33cfb6d36b9ffdd37843f7c4c1b5dc67"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e12f8ee80aa35e746230a2af83e81bd6b52daa92a8afaef4fea4a2ce9b9f4fa"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b6cefa579e1237ce198619b76eaa148b71894fb0d6bcf9024460f9bf30fd228"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:61f1e3fb621f5420523abb71f5771a204b33c21d31e7d9d86881b2cffe92c47c"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4f6e2a839f83a6a76854d12dbebde50e4b1afa63e27761549d006fa53e9aa80e"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:1ec937546cad86d0dce5396748bf392bb7b62a9eeb8c66efac60e947697f0e58"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:82ca51ff0fc5b641a2d4e1cc8c5ff108699b7a56d7f3ad6f6da9dbb6f0145b48"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:633968254f8d421e70f91c6ebe71ed0ab140220469cf87a9857e21c16687c034"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-win32.whl", hash = "sha256:c0c72d34e7de5604df0fde3644cc079feee5e55464967d10b24b1de268deceb9"}, + {file = "charset_normalizer-3.3.1-cp37-cp37m-win_amd64.whl", hash = "sha256:63accd11149c0f9a99e3bc095bbdb5a464862d77a7e309ad5938fbc8721235ae"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5a3580a4fdc4ac05f9e53c57f965e3594b2f99796231380adb2baaab96e22761"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2465aa50c9299d615d757c1c888bc6fef384b7c4aec81c05a0172b4400f98557"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cb7cd68814308aade9d0c93c5bd2ade9f9441666f8ba5aa9c2d4b389cb5e2a45"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:91e43805ccafa0a91831f9cd5443aa34528c0c3f2cc48c4cb3d9a7721053874b"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:854cc74367180beb327ab9d00f964f6d91da06450b0855cbbb09187bcdb02de5"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c15070ebf11b8b7fd1bfff7217e9324963c82dbdf6182ff7050519e350e7ad9f"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c4c99f98fc3a1835af8179dcc9013f93594d0670e2fa80c83aa36346ee763d2"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3fb765362688821404ad6cf86772fc54993ec11577cd5a92ac44b4c2ba52155b"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dced27917823df984fe0c80a5c4ad75cf58df0fbfae890bc08004cd3888922a2"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a66bcdf19c1a523e41b8e9d53d0cedbfbac2e93c649a2e9502cb26c014d0980c"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:ecd26be9f112c4f96718290c10f4caea6cc798459a3a76636b817a0ed7874e42"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:3f70fd716855cd3b855316b226a1ac8bdb3caf4f7ea96edcccc6f484217c9597"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:17a866d61259c7de1bdadef418a37755050ddb4b922df8b356503234fff7932c"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-win32.whl", hash = "sha256:548eefad783ed787b38cb6f9a574bd8664468cc76d1538215d510a3cd41406cb"}, + {file = "charset_normalizer-3.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:45f053a0ece92c734d874861ffe6e3cc92150e32136dd59ab1fb070575189c97"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bc791ec3fd0c4309a753f95bb6c749ef0d8ea3aea91f07ee1cf06b7b02118f2f"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0c8c61fb505c7dad1d251c284e712d4e0372cef3b067f7ddf82a7fa82e1e9a93"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2c092be3885a1b7899cd85ce24acedc1034199d6fca1483fa2c3a35c86e43041"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c2000c54c395d9e5e44c99dc7c20a64dc371f777faf8bae4919ad3e99ce5253e"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4cb50a0335382aac15c31b61d8531bc9bb657cfd848b1d7158009472189f3d62"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c30187840d36d0ba2893bc3271a36a517a717f9fd383a98e2697ee890a37c273"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe81b35c33772e56f4b6cf62cf4aedc1762ef7162a31e6ac7fe5e40d0149eb67"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d0bf89afcbcf4d1bb2652f6580e5e55a840fdf87384f6063c4a4f0c95e378656"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:06cf46bdff72f58645434d467bf5228080801298fbba19fe268a01b4534467f5"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:3c66df3f41abee950d6638adc7eac4730a306b022570f71dd0bd6ba53503ab57"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:cd805513198304026bd379d1d516afbf6c3c13f4382134a2c526b8b854da1c2e"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:9505dc359edb6a330efcd2be825fdb73ee3e628d9010597aa1aee5aa63442e97"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:31445f38053476a0c4e6d12b047b08ced81e2c7c712e5a1ad97bc913256f91b2"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-win32.whl", hash = "sha256:bd28b31730f0e982ace8663d108e01199098432a30a4c410d06fe08fdb9e93f4"}, + {file = "charset_normalizer-3.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:555fe186da0068d3354cdf4bbcbc609b0ecae4d04c921cc13e209eece7720727"}, + {file = "charset_normalizer-3.3.1-py3-none-any.whl", hash = "sha256:800561453acdecedaac137bf09cd719c7a440b6800ec182f077bb8e7025fb708"}, +] + +[[package]] +name = "click" +version = "8.1.7" +description = "Composable command line interface toolkit" +optional = false +python-versions = ">=3.7" +files = [ + {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, + {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "dataclasses-json" +version = "0.5.9" +description = "Easily serialize dataclasses to and from JSON" +optional = false +python-versions = ">=3.6" +files = [ + {file = "dataclasses-json-0.5.9.tar.gz", hash = "sha256:e9ac87b73edc0141aafbce02b44e93553c3123ad574958f0fe52a534b6707e8e"}, + {file = "dataclasses_json-0.5.9-py3-none-any.whl", hash = "sha256:1280542631df1c375b7bc92e5b86d39e06c44760d7e3571a537b3b8acabf2f0c"}, +] + +[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 = ["flake8", "hypothesis", "ipython", "mypy (>=0.710)", "portray", "pytest (>=7.2.0)", "setuptools", "simplejson", "twine", "types-dataclasses", "wheel"] + +[[package]] +name = "datasets" +version = "2.14.6" +description = "HuggingFace community-driven open-source library of datasets" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "datasets-2.14.6-py3-none-any.whl", hash = "sha256:4de857ffce21cfc847236745c69f102e33cd1f0fa8398e7be9964525fd4cd5db"}, + {file = "datasets-2.14.6.tar.gz", hash = "sha256:97ebbace8ec7af11434a87d1215379927f8fee2beab2c4a674003756ecfe920c"}, +] + +[package.dependencies] +aiohttp = "*" +dill = ">=0.3.0,<0.3.8" +fsspec = {version = ">=2023.1.0,<=2023.10.0", extras = ["http"]} +huggingface-hub = ">=0.14.0,<1.0.0" +multiprocess = "*" +numpy = ">=1.17" +packaging = "*" +pandas = "*" +pyarrow = ">=8.0.0" +pyyaml = ">=5.1" +requests = ">=2.19.0" +tqdm = ">=4.62.1" +xxhash = "*" + +[package.extras] +apache-beam = ["apache-beam (>=2.26.0,<2.44.0)"] +audio = ["librosa", "soundfile (>=0.12.1)"] +benchmarks = ["tensorflow (==2.12.0)", "torch (==2.0.1)", "transformers (==4.30.1)"] +dev = ["Pillow (>=6.2.1)", "absl-py", "apache-beam (>=2.26.0,<2.44.0)", "black (>=23.1,<24.0)", "elasticsearch (<8.0.0)", "faiss-cpu (>=1.6.4)", "joblib (<1.3.0)", "joblibspark", "librosa", "lz4", "py7zr", "pyspark (>=3.4)", "pytest", "pytest-datadir", "pytest-xdist", "pyyaml (>=5.3.1)", "rarfile (>=4.0)", "ruff (>=0.0.241)", "s3fs", "s3fs (>=2021.11.1)", "soundfile (>=0.12.1)", "sqlalchemy (<2.0.0)", "tensorflow (>=2.2.0,!=2.6.0,!=2.6.1)", "tensorflow (>=2.3,!=2.6.0,!=2.6.1)", "tensorflow-macos", "tiktoken", "torch", "transformers", "zstandard"] +docs = ["s3fs", "tensorflow (>=2.2.0,!=2.6.0,!=2.6.1)", "tensorflow-macos", "torch", "transformers"] +jax = ["jax (>=0.2.8,!=0.3.2,<=0.3.25)", "jaxlib (>=0.1.65,<=0.3.25)"] +metrics-tests = ["Werkzeug (>=1.0.1)", "accelerate", "bert-score (>=0.3.6)", "jiwer", "langdetect", "mauve-text", "nltk", "requests-file (>=1.5.1)", "rouge-score", "sacrebleu", "sacremoses", "scikit-learn", "scipy", "sentencepiece", "seqeval", "six (>=1.15.0,<1.16.0)", "spacy (>=3.0.0)", "texttable (>=1.6.3)", "tldextract", "tldextract (>=3.1.0)", "toml (>=0.10.1)", "typer (<0.5.0)"] +quality = ["black (>=23.1,<24.0)", "pyyaml (>=5.3.1)", "ruff (>=0.0.241)"] +s3 = ["s3fs"] +tensorflow = ["tensorflow (>=2.2.0,!=2.6.0,!=2.6.1)", "tensorflow-macos"] +tensorflow-gpu = ["tensorflow-gpu (>=2.2.0,!=2.6.0,!=2.6.1)"] +tests = ["Pillow (>=6.2.1)", "absl-py", "apache-beam (>=2.26.0,<2.44.0)", "elasticsearch (<8.0.0)", "faiss-cpu (>=1.6.4)", "joblib (<1.3.0)", "joblibspark", "librosa", "lz4", "py7zr", "pyspark (>=3.4)", "pytest", "pytest-datadir", "pytest-xdist", "rarfile (>=4.0)", "s3fs (>=2021.11.1)", "soundfile (>=0.12.1)", "sqlalchemy (<2.0.0)", "tensorflow (>=2.3,!=2.6.0,!=2.6.1)", "tensorflow-macos", "tiktoken", "torch", "transformers", "zstandard"] +torch = ["torch"] +vision = ["Pillow (>=6.2.1)"] + +[[package]] +name = "deprecated" +version = "1.2.14" +description = "Python @deprecated decorator to deprecate old python classes, functions or methods." +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "Deprecated-1.2.14-py2.py3-none-any.whl", hash = "sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c"}, + {file = "Deprecated-1.2.14.tar.gz", hash = "sha256:e5323eb936458dccc2582dc6f9c322c852a775a27065ff2b0c4970b9d53d01b3"}, +] + +[package.dependencies] +wrapt = ">=1.10,<2" + +[package.extras] +dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] + +[[package]] +name = "dill" +version = "0.3.7" +description = "serialize all of Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "dill-0.3.7-py3-none-any.whl", hash = "sha256:76b122c08ef4ce2eedcd4d1abd8e641114bfc6c2867f49f3c41facf65bf19f5e"}, + {file = "dill-0.3.7.tar.gz", hash = "sha256:cc1c8b182eb3013e24bd475ff2e9295af86c1a38eb1aff128dac8962a9ce3c03"}, +] + +[package.extras] +graph = ["objgraph (>=1.7.2)"] + +[[package]] +name = "dnspython" +version = "2.4.2" +description = "DNS toolkit" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "dnspython-2.4.2-py3-none-any.whl", hash = "sha256:57c6fbaaeaaf39c891292012060beb141791735dbb4004798328fc2c467402d8"}, + {file = "dnspython-2.4.2.tar.gz", hash = "sha256:8dcfae8c7460a2f84b4072e26f1c9f4101ca20c071649cb7c34e8b6a93d58984"}, +] + +[package.extras] +dnssec = ["cryptography (>=2.6,<42.0)"] +doh = ["h2 (>=4.1.0)", "httpcore (>=0.17.3)", "httpx (>=0.24.1)"] +doq = ["aioquic (>=0.9.20)"] +idna = ["idna (>=2.1,<4.0)"] +trio = ["trio (>=0.14,<0.23)"] +wmi = ["wmi (>=1.5.1,<2.0.0)"] + +[[package]] +name = "docopt" +version = "0.6.2" +description = "Pythonic argument parser, that will make you smile" +optional = false +python-versions = "*" +files = [ + {file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"}, +] + +[[package]] +name = "events" +version = "0.5" +description = "Bringing the elegance of C# EventHandler to Python" +optional = false +python-versions = "*" +files = [ + {file = "Events-0.5-py3-none-any.whl", hash = "sha256:a7286af378ba3e46640ac9825156c93bdba7502174dd696090fdfcd4d80a1abd"}, +] + +[[package]] +name = "exceptiongroup" +version = "1.1.3" +description = "Backport of PEP 654 (exception groups)" +optional = false +python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.1.3-py3-none-any.whl", hash = "sha256:343280667a4585d195ca1cf9cef84a4e178c4b6cf2274caef9859782b567d5e3"}, + {file = "exceptiongroup-1.1.3.tar.gz", hash = "sha256:097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9"}, +] + +[package.extras] +test = ["pytest (>=6)"] + +[[package]] +name = "farm-haystack" +version = "1.21.2" +description = "LLM framework to build customizable, production-ready LLM applications. Connect components (models, vector DBs, file converters) to pipelines or agents that can interact with your data." +optional = false +python-versions = ">=3.8" +files = [ + {file = "farm_haystack-1.21.2-py3-none-any.whl", hash = "sha256:26a09e2563fd9bd5c4deb19bad91d44bcd215459b454d84ccacf8307a85250f8"}, + {file = "farm_haystack-1.21.2.tar.gz", hash = "sha256:ebd33c118585435212b5e421e1b5d0e763659db3993f5d505b4f06ccb9ef2f11"}, +] + +[package.dependencies] +boilerpy3 = "*" +events = "*" +httpx = "*" +jsonschema = "*" +lazy-imports = "0.3.1" +more-itertools = "*" +networkx = "*" +pandas = "*" +pillow = "*" +platformdirs = "*" +posthog = "*" +prompthub-py = "4.0.0" +pydantic = "<2" +quantulum3 = "*" +rank-bm25 = "*" +requests = "*" +requests-cache = "<1.0.0" +scikit-learn = ">=1.3.0" +sseclient-py = "*" +tenacity = "*" +tiktoken = ">=0.5.1" +tqdm = "*" +transformers = "4.32.1" + +[package.extras] +all = ["farm-haystack[audio,aws,beir,crawler,docstores,file-conversion,inference,metrics,ocr,onnx,pdf,preprocessing,preview,ray]"] +all-gpu = ["farm-haystack[audio,aws,crawler,docstores-gpu,file-conversion,inference,metrics,ocr,onnx-gpu,pdf,preprocessing,preview,ray]"] +audio = ["openai-whisper"] +aws = ["boto3", "botocore (>=1.27)"] +beir = ["beir"] +colab = ["pillow (<=9.0.0)"] +crawler = ["selenium (>=4.11.0)"] +dev = ["coverage", "dulwich (>=0.21.0,<1.0.0)", "farm-haystack[formatting]", "jupytercontrib", "mkdocs", "mypy", "pre-commit", "psutil", "pydoc-markdown", "pylint", "pytest", "pytest-asyncio", "pytest-cov", "pytest-custom-exit-code", "python-multipart", "reno", "responses", "toml", "tox", "watchdog"] +docstores = ["farm-haystack[elasticsearch,faiss,opensearch,pinecone,weaviate]"] +docstores-gpu = ["farm-haystack[elasticsearch,faiss-gpu,opensearch,pinecone,weaviate]"] +elasticsearch = ["farm-haystack[elasticsearch7]"] +elasticsearch7 = ["elastic-transport (<8)", "elasticsearch (>=7.17,<8)"] +elasticsearch8 = ["elastic-transport (>=8,<9)", "elasticsearch (>=8,<9)"] +faiss = ["farm-haystack[only-faiss,sql]"] +faiss-gpu = ["farm-haystack[only-faiss-gpu,sql]"] +file-conversion = ["azure-ai-formrecognizer (>=3.2.0b2)", "beautifulsoup4", "markdown", "python-docx", "python-frontmatter", "python-magic", "python-magic-bin", "tika"] +formatting = ["black[jupyter] (>=23.0,<24.0)"] +inference = ["huggingface-hub (>=0.5.0)", "sentence-transformers (>=2.2.0)", "transformers[sentencepiece,torch] (==4.32.1)"] +metrics = ["mlflow", "rapidfuzz (>=2.0.15,<2.8.0)", "scipy (>=1.3.2)", "seqeval"] +ocr = ["pdf2image (>1.14)", "pytesseract (>0.3.7)"] +only-faiss = ["faiss-cpu (>=1.6.3,<=1.7.2)"] +only-faiss-gpu = ["faiss-gpu (>=1.6.3,<2)"] +only-pinecone = ["pinecone-client (>=2.0.11,<3)"] +onnx = ["onnxruntime", "onnxruntime-tools"] +onnx-gpu = ["onnxruntime-gpu", "onnxruntime-tools"] +opensearch = ["opensearch-py (>=2)"] +pdf = ["pymupdf (>=1.18.16)"] +pinecone = ["farm-haystack[only-pinecone,sql]"] +preprocessing = ["langdetect", "nltk"] +preview = ["canals (==0.8.0)", "jinja2", "lazy-imports", "openai", "pandas", "rank-bm25", "requests", "tenacity", "tqdm"] +ray = ["aiorwlock (>=1.3.0,<2)", "ray[serve] (>=1.9.1,!=1.12.0,<2)", "ray[serve] (>=1.9.1,<2)"] +sql = ["psycopg2-binary", "sqlalchemy (>=1.4.2,<2)", "sqlalchemy-utils"] +weaviate = ["weaviate-client (>2)"] + +[[package]] +name = "fastapi" +version = "0.100.1" +description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" +optional = false +python-versions = ">=3.7" +files = [ + {file = "fastapi-0.100.1-py3-none-any.whl", hash = "sha256:ec6dd52bfc4eff3063cfcd0713b43c87640fefb2687bbbe3d8a08d94049cdf32"}, + {file = "fastapi-0.100.1.tar.gz", hash = "sha256:522700d7a469e4a973d92321ab93312448fbe20fca9c8da97effc7e7bc56df23"}, +] + +[package.dependencies] +pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<3.0.0" +starlette = ">=0.27.0,<0.28.0" +typing-extensions = ">=4.5.0" + +[package.extras] +all = ["email-validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "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)"] + +[[package]] +name = "fastapi-socketio" +version = "0.0.10" +description = "Easily integrate socket.io with your FastAPI app." +optional = false +python-versions = "*" +files = [ + {file = "fastapi-socketio-0.0.10.tar.gz", hash = "sha256:202f9b319f010001cbd1114ec92a0d9eb5f5ca9316eae5fd41a6088da0812727"}, + {file = "fastapi_socketio-0.0.10-py3-none-any.whl", hash = "sha256:11c2bfa3f25d786bd860ed13c892472e86bfeba85e7a0bec4f922ae5e4d8650f"}, +] + +[package.dependencies] +fastapi = ">=0.61.1" +python-socketio = ">=4.6.0" + +[package.extras] +test = ["pytest"] + +[[package]] +name = "filelock" +version = "3.12.4" +description = "A platform independent file lock." +optional = false +python-versions = ">=3.8" +files = [ + {file = "filelock-3.12.4-py3-none-any.whl", hash = "sha256:08c21d87ded6e2b9da6728c3dff51baf1dcecf973b768ef35bcbc3447edb9ad4"}, + {file = "filelock-3.12.4.tar.gz", hash = "sha256:2e6f249f1f3654291606e046b09f1fd5eac39b360664c27f5aad072012f8bcbd"}, +] + +[package.extras] +docs = ["furo (>=2023.7.26)", "sphinx (>=7.1.2)", "sphinx-autodoc-typehints (>=1.24)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.3)", "diff-cover (>=7.7)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "pytest-timeout (>=2.1)"] +typing = ["typing-extensions (>=4.7.1)"] + +[[package]] +name = "filetype" +version = "1.2.0" +description = "Infer file type and MIME type of any file/buffer. No external dependencies." +optional = false +python-versions = "*" +files = [ + {file = "filetype-1.2.0-py2.py3-none-any.whl", hash = "sha256:7ce71b6880181241cf7ac8697a2f1eb6a8bd9b429f7ad6d27b8db9ba5f1c2d25"}, + {file = "filetype-1.2.0.tar.gz", hash = "sha256:66b56cd6474bf41d8c54660347d37afcc3f7d1970648de365c102ef77548aadb"}, +] + +[[package]] +name = "frozenlist" +version = "1.4.0" +description = "A list-like structure which implements collections.abc.MutableSequence" +optional = false +python-versions = ">=3.8" +files = [ + {file = "frozenlist-1.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:764226ceef3125e53ea2cb275000e309c0aa5464d43bd72abd661e27fffc26ab"}, + {file = "frozenlist-1.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d6484756b12f40003c6128bfcc3fa9f0d49a687e171186c2d85ec82e3758c559"}, + {file = "frozenlist-1.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9ac08e601308e41eb533f232dbf6b7e4cea762f9f84f6357136eed926c15d12c"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d081f13b095d74b67d550de04df1c756831f3b83dc9881c38985834387487f1b"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:71932b597f9895f011f47f17d6428252fc728ba2ae6024e13c3398a087c2cdea"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:981b9ab5a0a3178ff413bca62526bb784249421c24ad7381e39d67981be2c326"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e41f3de4df3e80de75845d3e743b3f1c4c8613c3997a912dbf0229fc61a8b963"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6918d49b1f90821e93069682c06ffde41829c346c66b721e65a5c62b4bab0300"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0e5c8764c7829343d919cc2dfc587a8db01c4f70a4ebbc49abde5d4b158b007b"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8d0edd6b1c7fb94922bf569c9b092ee187a83f03fb1a63076e7774b60f9481a8"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:e29cda763f752553fa14c68fb2195150bfab22b352572cb36c43c47bedba70eb"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:0c7c1b47859ee2cac3846fde1c1dc0f15da6cec5a0e5c72d101e0f83dcb67ff9"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:901289d524fdd571be1c7be054f48b1f88ce8dddcbdf1ec698b27d4b8b9e5d62"}, + {file = "frozenlist-1.4.0-cp310-cp310-win32.whl", hash = "sha256:1a0848b52815006ea6596c395f87449f693dc419061cc21e970f139d466dc0a0"}, + {file = "frozenlist-1.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:b206646d176a007466358aa21d85cd8600a415c67c9bd15403336c331a10d956"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:de343e75f40e972bae1ef6090267f8260c1446a1695e77096db6cfa25e759a95"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad2a9eb6d9839ae241701d0918f54c51365a51407fd80f6b8289e2dfca977cc3"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bd7bd3b3830247580de99c99ea2a01416dfc3c34471ca1298bccabf86d0ff4dc"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bdf1847068c362f16b353163391210269e4f0569a3c166bc6a9f74ccbfc7e839"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38461d02d66de17455072c9ba981d35f1d2a73024bee7790ac2f9e361ef1cd0c"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5a32087d720c608f42caed0ef36d2b3ea61a9d09ee59a5142d6070da9041b8f"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dd65632acaf0d47608190a71bfe46b209719bf2beb59507db08ccdbe712f969b"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:261b9f5d17cac914531331ff1b1d452125bf5daa05faf73b71d935485b0c510b"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b89ac9768b82205936771f8d2eb3ce88503b1556324c9f903e7156669f521472"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:008eb8b31b3ea6896da16c38c1b136cb9fec9e249e77f6211d479db79a4eaf01"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:e74b0506fa5aa5598ac6a975a12aa8928cbb58e1f5ac8360792ef15de1aa848f"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:490132667476f6781b4c9458298b0c1cddf237488abd228b0b3650e5ecba7467"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:76d4711f6f6d08551a7e9ef28c722f4a50dd0fc204c56b4bcd95c6cc05ce6fbb"}, + {file = "frozenlist-1.4.0-cp311-cp311-win32.whl", hash = "sha256:a02eb8ab2b8f200179b5f62b59757685ae9987996ae549ccf30f983f40602431"}, + {file = "frozenlist-1.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:515e1abc578dd3b275d6a5114030b1330ba044ffba03f94091842852f806f1c1"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f0ed05f5079c708fe74bf9027e95125334b6978bf07fd5ab923e9e55e5fbb9d3"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ca265542ca427bf97aed183c1676e2a9c66942e822b14dc6e5f42e038f92a503"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:491e014f5c43656da08958808588cc6c016847b4360e327a62cb308c791bd2d9"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:17ae5cd0f333f94f2e03aaf140bb762c64783935cc764ff9c82dff626089bebf"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e78fb68cf9c1a6aa4a9a12e960a5c9dfbdb89b3695197aa7064705662515de2"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5655a942f5f5d2c9ed93d72148226d75369b4f6952680211972a33e59b1dfdc"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c11b0746f5d946fecf750428a95f3e9ebe792c1ee3b1e96eeba145dc631a9672"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e66d2a64d44d50d2543405fb183a21f76b3b5fd16f130f5c99187c3fb4e64919"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:88f7bc0fcca81f985f78dd0fa68d2c75abf8272b1f5c323ea4a01a4d7a614efc"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5833593c25ac59ede40ed4de6d67eb42928cca97f26feea219f21d0ed0959b79"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:fec520865f42e5c7f050c2a79038897b1c7d1595e907a9e08e3353293ffc948e"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:b826d97e4276750beca7c8f0f1a4938892697a6bcd8ec8217b3312dad6982781"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:ceb6ec0a10c65540421e20ebd29083c50e6d1143278746a4ef6bcf6153171eb8"}, + {file = "frozenlist-1.4.0-cp38-cp38-win32.whl", hash = "sha256:2b8bcf994563466db019fab287ff390fffbfdb4f905fc77bc1c1d604b1c689cc"}, + {file = "frozenlist-1.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:a6c8097e01886188e5be3e6b14e94ab365f384736aa1fca6a0b9e35bd4a30bc7"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6c38721585f285203e4b4132a352eb3daa19121a035f3182e08e437cface44bf"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a0c6da9aee33ff0b1a451e867da0c1f47408112b3391dd43133838339e410963"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:93ea75c050c5bb3d98016b4ba2497851eadf0ac154d88a67d7a6816206f6fa7f"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f61e2dc5ad442c52b4887f1fdc112f97caeff4d9e6ebe78879364ac59f1663e1"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aa384489fefeb62321b238e64c07ef48398fe80f9e1e6afeff22e140e0850eef"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:10ff5faaa22786315ef57097a279b833ecab1a0bfb07d604c9cbb1c4cdc2ed87"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:007df07a6e3eb3e33e9a1fe6a9db7af152bbd8a185f9aaa6ece10a3529e3e1c6"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f4f399d28478d1f604c2ff9119907af9726aed73680e5ed1ca634d377abb087"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c5374b80521d3d3f2ec5572e05adc94601985cc526fb276d0c8574a6d749f1b3"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ce31ae3e19f3c902de379cf1323d90c649425b86de7bbdf82871b8a2a0615f3d"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7211ef110a9194b6042449431e08c4d80c0481e5891e58d429df5899690511c2"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:556de4430ce324c836789fa4560ca62d1591d2538b8ceb0b4f68fb7b2384a27a"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7645a8e814a3ee34a89c4a372011dcd817964ce8cb273c8ed6119d706e9613e3"}, + {file = "frozenlist-1.4.0-cp39-cp39-win32.whl", hash = "sha256:19488c57c12d4e8095a922f328df3f179c820c212940a498623ed39160bc3c2f"}, + {file = "frozenlist-1.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:6221d84d463fb110bdd7619b69cb43878a11d51cbb9394ae3105d082d5199167"}, + {file = "frozenlist-1.4.0.tar.gz", hash = "sha256:09163bdf0b2907454042edb19f887c6d33806adc71fbd54afc14908bfdc22251"}, +] + +[[package]] +name = "fsspec" +version = "2023.10.0" +description = "File-system specification" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fsspec-2023.10.0-py3-none-any.whl", hash = "sha256:346a8f024efeb749d2a5fca7ba8854474b1ff9af7c3faaf636a4548781136529"}, + {file = "fsspec-2023.10.0.tar.gz", hash = "sha256:330c66757591df346ad3091a53bd907e15348c2ba17d63fd54f5c39c4457d2a5"}, +] + +[package.dependencies] +aiohttp = {version = "<4.0.0a0 || >4.0.0a0,<4.0.0a1 || >4.0.0a1", optional = true, markers = "extra == \"http\""} +requests = {version = "*", optional = true, markers = "extra == \"http\""} + +[package.extras] +abfs = ["adlfs"] +adl = ["adlfs"] +arrow = ["pyarrow (>=1)"] +dask = ["dask", "distributed"] +devel = ["pytest", "pytest-cov"] +dropbox = ["dropbox", "dropboxdrivefs", "requests"] +full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "dask", "distributed", "dropbox", "dropboxdrivefs", "fusepy", "gcsfs", "libarchive-c", "ocifs", "panel", "paramiko", "pyarrow (>=1)", "pygit2", "requests", "s3fs", "smbprotocol", "tqdm"] +fuse = ["fusepy"] +gcs = ["gcsfs"] +git = ["pygit2"] +github = ["requests"] +gs = ["gcsfs"] +gui = ["panel"] +hdfs = ["pyarrow (>=1)"] +http = ["aiohttp (!=4.0.0a0,!=4.0.0a1)", "requests"] +libarchive = ["libarchive-c"] +oci = ["ocifs"] +s3 = ["s3fs"] +sftp = ["paramiko"] +smb = ["smbprotocol"] +ssh = ["paramiko"] +tqdm = ["tqdm"] + +[[package]] +name = "googleapis-common-protos" +version = "1.61.0" +description = "Common protobufs used in Google APIs" +optional = false +python-versions = ">=3.7" +files = [ + {file = "googleapis-common-protos-1.61.0.tar.gz", hash = "sha256:8a64866a97f6304a7179873a465d6eee97b7a24ec6cfd78e0f575e96b821240b"}, + {file = "googleapis_common_protos-1.61.0-py2.py3-none-any.whl", hash = "sha256:22f1915393bb3245343f6efe87f6fe868532efc12aa26b391b15132e1279f1c0"}, +] + +[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.0.dev0" + +[package.extras] +grpc = ["grpcio (>=1.44.0,<2.0.0.dev0)"] + +[[package]] +name = "greenlet" +version = "3.0.0" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=3.7" +files = [ + {file = "greenlet-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9"}, + {file = "greenlet-3.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7"}, + {file = "greenlet-3.0.0-cp310-universal2-macosx_11_0_x86_64.whl", hash = "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f"}, + {file = "greenlet-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362"}, + {file = "greenlet-3.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c"}, + {file = "greenlet-3.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1482fba7fbed96ea7842b5a7fc11d61727e8be75a077e603e8ab49d24e234383"}, + {file = "greenlet-3.0.0-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17"}, + {file = "greenlet-3.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625"}, + {file = "greenlet-3.0.0-cp37-cp37m-win32.whl", hash = "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947"}, + {file = "greenlet-3.0.0-cp37-cp37m-win_amd64.whl", hash = "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705"}, + {file = "greenlet-3.0.0-cp37-universal2-macosx_11_0_x86_64.whl", hash = "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353"}, + {file = "greenlet-3.0.0-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f"}, + {file = "greenlet-3.0.0-cp38-cp38-win32.whl", hash = "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a"}, + {file = "greenlet-3.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b"}, + {file = "greenlet-3.0.0-cp38-universal2-macosx_11_0_x86_64.whl", hash = "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464"}, + {file = "greenlet-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4"}, + {file = "greenlet-3.0.0-cp39-cp39-win32.whl", hash = "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9"}, + {file = "greenlet-3.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce"}, + {file = "greenlet-3.0.0-cp39-universal2-macosx_11_0_x86_64.whl", hash = "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355"}, + {file = "greenlet-3.0.0.tar.gz", hash = "sha256:19834e3f91f485442adc1ee440171ec5d9a4840a1f7bd5ed97833544719ce10b"}, +] + +[package.extras] +docs = ["Sphinx"] +test = ["objgraph", "psutil"] + +[[package]] +name = "grpcio" +version = "1.59.0" +description = "HTTP/2-based RPC framework" +optional = false +python-versions = ">=3.7" +files = [ + {file = "grpcio-1.59.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:225e5fa61c35eeaebb4e7491cd2d768cd8eb6ed00f2664fa83a58f29418b39fd"}, + {file = "grpcio-1.59.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:b95ec8ecc4f703f5caaa8d96e93e40c7f589bad299a2617bdb8becbcce525539"}, + {file = "grpcio-1.59.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:1a839ba86764cc48226f50b924216000c79779c563a301586a107bda9cbe9dcf"}, + {file = "grpcio-1.59.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f6cfe44a5d7c7d5f1017a7da1c8160304091ca5dc64a0f85bca0d63008c3137a"}, + {file = "grpcio-1.59.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d0fcf53df684fcc0154b1e61f6b4a8c4cf5f49d98a63511e3f30966feff39cd0"}, + {file = "grpcio-1.59.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa66cac32861500f280bb60fe7d5b3e22d68c51e18e65367e38f8669b78cea3b"}, + {file = "grpcio-1.59.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8cd2d38c2d52f607d75a74143113174c36d8a416d9472415eab834f837580cf7"}, + {file = "grpcio-1.59.0-cp310-cp310-win32.whl", hash = "sha256:228b91ce454876d7eed74041aff24a8f04c0306b7250a2da99d35dd25e2a1211"}, + {file = "grpcio-1.59.0-cp310-cp310-win_amd64.whl", hash = "sha256:ca87ee6183421b7cea3544190061f6c1c3dfc959e0b57a5286b108511fd34ff4"}, + {file = "grpcio-1.59.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:c173a87d622ea074ce79be33b952f0b424fa92182063c3bda8625c11d3585d09"}, + {file = "grpcio-1.59.0-cp311-cp311-macosx_10_10_universal2.whl", hash = "sha256:ec78aebb9b6771d6a1de7b6ca2f779a2f6113b9108d486e904bde323d51f5589"}, + {file = "grpcio-1.59.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:0b84445fa94d59e6806c10266b977f92fa997db3585f125d6b751af02ff8b9fe"}, + {file = "grpcio-1.59.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c251d22de8f9f5cca9ee47e4bade7c5c853e6e40743f47f5cc02288ee7a87252"}, + {file = "grpcio-1.59.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:956f0b7cb465a65de1bd90d5a7475b4dc55089b25042fe0f6c870707e9aabb1d"}, + {file = "grpcio-1.59.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:38da5310ef84e16d638ad89550b5b9424df508fd5c7b968b90eb9629ca9be4b9"}, + {file = "grpcio-1.59.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:63982150a7d598281fa1d7ffead6096e543ff8be189d3235dd2b5604f2c553e5"}, + {file = "grpcio-1.59.0-cp311-cp311-win32.whl", hash = "sha256:50eff97397e29eeee5df106ea1afce3ee134d567aa2c8e04fabab05c79d791a7"}, + {file = "grpcio-1.59.0-cp311-cp311-win_amd64.whl", hash = "sha256:15f03bd714f987d48ae57fe092cf81960ae36da4e520e729392a59a75cda4f29"}, + {file = "grpcio-1.59.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:f1feb034321ae2f718172d86b8276c03599846dc7bb1792ae370af02718f91c5"}, + {file = "grpcio-1.59.0-cp312-cp312-macosx_10_10_universal2.whl", hash = "sha256:d09bd2a4e9f5a44d36bb8684f284835c14d30c22d8ec92ce796655af12163588"}, + {file = "grpcio-1.59.0-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:2f120d27051e4c59db2f267b71b833796770d3ea36ca712befa8c5fff5da6ebd"}, + {file = "grpcio-1.59.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ba0ca727a173ee093f49ead932c051af463258b4b493b956a2c099696f38aa66"}, + {file = "grpcio-1.59.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5711c51e204dc52065f4a3327dca46e69636a0b76d3e98c2c28c4ccef9b04c52"}, + {file = "grpcio-1.59.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:d74f7d2d7c242a6af9d4d069552ec3669965b74fed6b92946e0e13b4168374f9"}, + {file = "grpcio-1.59.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3859917de234a0a2a52132489c4425a73669de9c458b01c9a83687f1f31b5b10"}, + {file = "grpcio-1.59.0-cp312-cp312-win32.whl", hash = "sha256:de2599985b7c1b4ce7526e15c969d66b93687571aa008ca749d6235d056b7205"}, + {file = "grpcio-1.59.0-cp312-cp312-win_amd64.whl", hash = "sha256:598f3530231cf10ae03f4ab92d48c3be1fee0c52213a1d5958df1a90957e6a88"}, + {file = "grpcio-1.59.0-cp37-cp37m-linux_armv7l.whl", hash = "sha256:b34c7a4c31841a2ea27246a05eed8a80c319bfc0d3e644412ec9ce437105ff6c"}, + {file = "grpcio-1.59.0-cp37-cp37m-macosx_10_10_universal2.whl", hash = "sha256:c4dfdb49f4997dc664f30116af2d34751b91aa031f8c8ee251ce4dcfc11277b0"}, + {file = "grpcio-1.59.0-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:61bc72a00ecc2b79d9695220b4d02e8ba53b702b42411397e831c9b0589f08a3"}, + {file = "grpcio-1.59.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f367e4b524cb319e50acbdea57bb63c3b717c5d561974ace0b065a648bb3bad3"}, + {file = "grpcio-1.59.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:849c47ef42424c86af069a9c5e691a765e304079755d5c29eff511263fad9c2a"}, + {file = "grpcio-1.59.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c0488c2b0528e6072010182075615620071371701733c63ab5be49140ed8f7f0"}, + {file = "grpcio-1.59.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:611d9aa0017fa386809bddcb76653a5ab18c264faf4d9ff35cb904d44745f575"}, + {file = "grpcio-1.59.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e5378785dce2b91eb2e5b857ec7602305a3b5cf78311767146464bfa365fc897"}, + {file = "grpcio-1.59.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:fe976910de34d21057bcb53b2c5e667843588b48bf11339da2a75f5c4c5b4055"}, + {file = "grpcio-1.59.0-cp38-cp38-macosx_10_10_universal2.whl", hash = "sha256:c041a91712bf23b2a910f61e16565a05869e505dc5a5c025d429ca6de5de842c"}, + {file = "grpcio-1.59.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:0ae444221b2c16d8211b55326f8ba173ba8f8c76349bfc1768198ba592b58f74"}, + {file = "grpcio-1.59.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ceb1e68135788c3fce2211de86a7597591f0b9a0d2bb80e8401fd1d915991bac"}, + {file = "grpcio-1.59.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c4b1cc3a9dc1924d2eb26eec8792fedd4b3fcd10111e26c1d551f2e4eda79ce"}, + {file = "grpcio-1.59.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:871371ce0c0055d3db2a86fdebd1e1d647cf21a8912acc30052660297a5a6901"}, + {file = "grpcio-1.59.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:93e9cb546e610829e462147ce724a9cb108e61647a3454500438a6deef610be1"}, + {file = "grpcio-1.59.0-cp38-cp38-win32.whl", hash = "sha256:f21917aa50b40842b51aff2de6ebf9e2f6af3fe0971c31960ad6a3a2b24988f4"}, + {file = "grpcio-1.59.0-cp38-cp38-win_amd64.whl", hash = "sha256:14890da86a0c0e9dc1ea8e90101d7a3e0e7b1e71f4487fab36e2bfd2ecadd13c"}, + {file = "grpcio-1.59.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:34341d9e81a4b669a5f5dca3b2a760b6798e95cdda2b173e65d29d0b16692857"}, + {file = "grpcio-1.59.0-cp39-cp39-macosx_10_10_universal2.whl", hash = "sha256:986de4aa75646e963466b386a8c5055c8b23a26a36a6c99052385d6fe8aaf180"}, + {file = "grpcio-1.59.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:aca8a24fef80bef73f83eb8153f5f5a0134d9539b4c436a716256b311dda90a6"}, + {file = "grpcio-1.59.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:936b2e04663660c600d5173bc2cc84e15adbad9c8f71946eb833b0afc205b996"}, + {file = "grpcio-1.59.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc8bf2e7bc725e76c0c11e474634a08c8f24bcf7426c0c6d60c8f9c6e70e4d4a"}, + {file = "grpcio-1.59.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:81d86a096ccd24a57fa5772a544c9e566218bc4de49e8c909882dae9d73392df"}, + {file = "grpcio-1.59.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2ea95cd6abbe20138b8df965b4a8674ec312aaef3147c0f46a0bac661f09e8d0"}, + {file = "grpcio-1.59.0-cp39-cp39-win32.whl", hash = "sha256:3b8ff795d35a93d1df6531f31c1502673d1cebeeba93d0f9bd74617381507e3f"}, + {file = "grpcio-1.59.0-cp39-cp39-win_amd64.whl", hash = "sha256:38823bd088c69f59966f594d087d3a929d1ef310506bee9e3648317660d65b81"}, + {file = "grpcio-1.59.0.tar.gz", hash = "sha256:acf70a63cf09dd494000007b798aff88a436e1c03b394995ce450be437b8e54f"}, +] + +[package.extras] +protobuf = ["grpcio-tools (>=1.59.0)"] + +[[package]] +name = "grpcio-reflection" +version = "1.59.0" +description = "Standard Protobuf Reflection Service for gRPC" +optional = false +python-versions = ">=3.6" +files = [ + {file = "grpcio-reflection-1.59.0.tar.gz", hash = "sha256:1fe8f0dd6c180fdcf4e12ced2a8f784d9c741ccbc0b198585b1df024b7f8f3f2"}, + {file = "grpcio_reflection-1.59.0-py3-none-any.whl", hash = "sha256:bf4efc7e2e8162e5be9736f4d0a0b324c9bf0c04ad597a9d78fcaf1fbdf818ec"}, +] + +[package.dependencies] +grpcio = ">=1.59.0" +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" +optional = false +python-versions = ">=3.7" +files = [ + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] + +[[package]] +name = "httpcore" +version = "0.18.0" +description = "A minimal low-level HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpcore-0.18.0-py3-none-any.whl", hash = "sha256:adc5398ee0a476567bf87467063ee63584a8bce86078bf748e48754f60202ced"}, + {file = "httpcore-0.18.0.tar.gz", hash = "sha256:13b5e5cd1dca1a6636a6aaea212b19f4f85cd88c366a2b82304181b769aab3c9"}, +] + +[package.dependencies] +anyio = ">=3.0,<5.0" +certifi = "*" +h11 = ">=0.13,<0.15" +sniffio = "==1.*" + +[package.extras] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] + +[[package]] +name = "httpx" +version = "0.25.0" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpx-0.25.0-py3-none-any.whl", hash = "sha256:181ea7f8ba3a82578be86ef4171554dd45fec26a02556a744db029a0a27b7100"}, + {file = "httpx-0.25.0.tar.gz", hash = "sha256:47ecda285389cb32bb2691cc6e069e3ab0205956f681c5b2ad2325719751d875"}, +] + +[package.dependencies] +certifi = "*" +httpcore = ">=0.18.0,<0.19.0" +idna = "*" +sniffio = "*" + +[package.extras] +brotli = ["brotli", "brotlicffi"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] + +[[package]] +name = "huggingface-hub" +version = "0.18.0" +description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "huggingface_hub-0.18.0-py3-none-any.whl", hash = "sha256:ee0b6b68acbf6aeb6d083ea081e981c277a1104b82ab67fdf6780ff5396830af"}, + {file = "huggingface_hub-0.18.0.tar.gz", hash = "sha256:10eda12b9c1cfa800b4b7c096b3ace8843734c3f28d69d1c243743fb7d7a2e81"}, +] + +[package.dependencies] +filelock = "*" +fsspec = ">=2023.5.0" +packaging = ">=20.9" +pyyaml = ">=5.1" +requests = "*" +tqdm = ">=4.42.1" +typing-extensions = ">=3.7.4.3" + +[package.extras] +all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "black (==23.7)", "gradio", "jedi", "mypy (==1.5.1)", "numpy", "pydantic (<2.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-vcr", "pytest-xdist", "ruff (>=0.0.241)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "urllib3 (<2.0)"] +cli = ["InquirerPy (==0.3.4)"] +dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "black (==23.7)", "gradio", "jedi", "mypy (==1.5.1)", "numpy", "pydantic (<2.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-vcr", "pytest-xdist", "ruff (>=0.0.241)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "urllib3 (<2.0)"] +docs = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "black (==23.7)", "gradio", "hf-doc-builder", "jedi", "mypy (==1.5.1)", "numpy", "pydantic (<2.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-vcr", "pytest-xdist", "ruff (>=0.0.241)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "urllib3 (<2.0)", "watchdog"] +fastai = ["fastai (>=2.4)", "fastcore (>=1.3.27)", "toml"] +inference = ["aiohttp", "pydantic (<2.0)"] +quality = ["black (==23.7)", "mypy (==1.5.1)", "ruff (>=0.0.241)"] +tensorflow = ["graphviz", "pydot", "tensorflow"] +testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "gradio", "jedi", "numpy", "pydantic (<2.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"] +torch = ["torch"] +typing = ["pydantic (<2.0)", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3"] + +[[package]] +name = "idna" +version = "3.4" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.5" +files = [ + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, +] + +[[package]] +name = "importlib-metadata" +version = "6.8.0" +description = "Read metadata from Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"}, + {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"}, +] + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] + +[[package]] +name = "inflect" +version = "7.0.0" +description = "Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words" +optional = false +python-versions = ">=3.8" +files = [ + {file = "inflect-7.0.0-py3-none-any.whl", hash = "sha256:9544afed6182176e43955c44b1acdaed30f9b2b56c16d1fc5b222d98218b546e"}, + {file = "inflect-7.0.0.tar.gz", hash = "sha256:63da9325ad29da81ec23e055b41225795ab793b4ecb483be5dc1fa363fd4717e"}, +] + +[package.dependencies] +pydantic = ">=1.9.1" +typing-extensions = "*" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pygments", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + +[[package]] +name = "jinja2" +version = "3.1.2" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "joblib" +version = "1.3.2" +description = "Lightweight pipelining with Python functions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"}, + {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"}, +] + +[[package]] +name = "jsonpatch" +version = "1.33" +description = "Apply JSON-Patches (RFC 6902)" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +files = [ + {file = "jsonpatch-1.33-py2.py3-none-any.whl", hash = "sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade"}, + {file = "jsonpatch-1.33.tar.gz", hash = "sha256:9fcd4009c41e6d12348b4a0ff2563ba56a2923a7dfee731d004e212e1ee5030c"}, +] + +[package.dependencies] +jsonpointer = ">=1.9" + +[[package]] +name = "jsonpointer" +version = "2.4" +description = "Identify specific nodes in a JSON document (RFC 6901)" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +files = [ + {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, + {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, +] + +[[package]] +name = "jsonschema" +version = "4.19.1" +description = "An implementation of JSON Schema validation for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema-4.19.1-py3-none-any.whl", hash = "sha256:cd5f1f9ed9444e554b38ba003af06c0a8c2868131e56bfbef0550fb450c0330e"}, + {file = "jsonschema-4.19.1.tar.gz", hash = "sha256:ec84cc37cfa703ef7cd4928db24f9cb31428a5d0fa77747b8b51a847458e0bbf"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +jsonschema-specifications = ">=2023.03.6" +referencing = ">=0.28.4" +rpds-py = ">=0.7.1" + +[package.extras] +format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"] + +[[package]] +name = "jsonschema-specifications" +version = "2023.7.1" +description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema_specifications-2023.7.1-py3-none-any.whl", hash = "sha256:05adf340b659828a004220a9613be00fa3f223f2b82002e273dee62fd50524b1"}, + {file = "jsonschema_specifications-2023.7.1.tar.gz", hash = "sha256:c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb"}, +] + +[package.dependencies] +referencing = ">=0.28.0" + +[[package]] +name = "langchain" +version = "0.0.320" +description = "Building applications with LLMs through composability" +optional = false +python-versions = ">=3.8.1,<4.0" +files = [ + {file = "langchain-0.0.320-py3-none-any.whl", hash = "sha256:53e32b581a8a0215a78086bc19725ef287a4daf4009733dfc9995d657433291c"}, + {file = "langchain-0.0.320.tar.gz", hash = "sha256:e2dee9779583220d4031307f54169ac65fe23b81cb425756d54dce1277aef4ba"}, +] + +[package.dependencies] +aiohttp = ">=3.8.3,<4.0.0" +anyio = "<4.0" +async-timeout = {version = ">=4.0.0,<5.0.0", markers = "python_version < \"3.11\""} +dataclasses-json = ">=0.5.7,<0.7" +jsonpatch = ">=1.33,<2.0" +langsmith = ">=0.0.43,<0.1.0" +numpy = ">=1,<2" +pydantic = ">=1,<3" +PyYAML = ">=5.3" +requests = ">=2,<3" +SQLAlchemy = ">=1.4,<3" +tenacity = ">=8.1.0,<9.0.0" + +[package.extras] +all = ["O365 (>=2.0.26,<3.0.0)", "aleph-alpha-client (>=2.15.0,<3.0.0)", "amadeus (>=8.1.0)", "arxiv (>=1.4,<2.0)", "atlassian-python-api (>=3.36.0,<4.0.0)", "awadb (>=0.3.9,<0.4.0)", "azure-ai-formrecognizer (>=3.2.1,<4.0.0)", "azure-ai-vision (>=0.11.1b1,<0.12.0)", "azure-cognitiveservices-speech (>=1.28.0,<2.0.0)", "azure-cosmos (>=4.4.0b1,<5.0.0)", "azure-identity (>=1.12.0,<2.0.0)", "beautifulsoup4 (>=4,<5)", "clarifai (>=9.1.0)", "clickhouse-connect (>=0.5.14,<0.6.0)", "cohere (>=4,<5)", "deeplake (>=3.6.8,<4.0.0)", "docarray[hnswlib] (>=0.32.0,<0.33.0)", "duckduckgo-search (>=3.8.3,<4.0.0)", "elasticsearch (>=8,<9)", "esprima (>=4.0.1,<5.0.0)", "faiss-cpu (>=1,<2)", "google-api-python-client (==2.70.0)", "google-auth (>=2.18.1,<3.0.0)", "google-search-results (>=2,<3)", "gptcache (>=0.1.7)", "html2text (>=2020.1.16,<2021.0.0)", "huggingface_hub (>=0,<1)", "jinja2 (>=3,<4)", "jq (>=1.4.1,<2.0.0)", "lancedb (>=0.1,<0.2)", "langkit (>=0.0.6,<0.1.0)", "lark (>=1.1.5,<2.0.0)", "libdeeplake (>=0.0.60,<0.0.61)", "librosa (>=0.10.0.post2,<0.11.0)", "lxml (>=4.9.2,<5.0.0)", "manifest-ml (>=0.0.1,<0.0.2)", "marqo (>=1.2.4,<2.0.0)", "momento (>=1.10.1,<2.0.0)", "nebula3-python (>=3.4.0,<4.0.0)", "neo4j (>=5.8.1,<6.0.0)", "networkx (>=2.6.3,<4)", "nlpcloud (>=1,<2)", "nltk (>=3,<4)", "nomic (>=1.0.43,<2.0.0)", "openai (>=0,<1)", "openlm (>=0.0.5,<0.0.6)", "opensearch-py (>=2.0.0,<3.0.0)", "pdfminer-six (>=20221105,<20221106)", "pexpect (>=4.8.0,<5.0.0)", "pgvector (>=0.1.6,<0.2.0)", "pinecone-client (>=2,<3)", "pinecone-text (>=0.4.2,<0.5.0)", "psycopg2-binary (>=2.9.5,<3.0.0)", "pymongo (>=4.3.3,<5.0.0)", "pyowm (>=3.3.0,<4.0.0)", "pypdf (>=3.4.0,<4.0.0)", "pytesseract (>=0.3.10,<0.4.0)", "python-arango (>=7.5.9,<8.0.0)", "pyvespa (>=0.33.0,<0.34.0)", "qdrant-client (>=1.3.1,<2.0.0)", "rdflib (>=6.3.2,<7.0.0)", "redis (>=4,<5)", "requests-toolbelt (>=1.0.0,<2.0.0)", "sentence-transformers (>=2,<3)", "singlestoredb (>=0.7.1,<0.8.0)", "tensorflow-text (>=2.11.0,<3.0.0)", "tigrisdb (>=1.0.0b6,<2.0.0)", "tiktoken (>=0.3.2,<0.6.0)", "torch (>=1,<3)", "transformers (>=4,<5)", "weaviate-client (>=3,<4)", "wikipedia (>=1,<2)", "wolframalpha (==5.0.0)"] +azure = ["azure-ai-formrecognizer (>=3.2.1,<4.0.0)", "azure-ai-vision (>=0.11.1b1,<0.12.0)", "azure-cognitiveservices-speech (>=1.28.0,<2.0.0)", "azure-core (>=1.26.4,<2.0.0)", "azure-cosmos (>=4.4.0b1,<5.0.0)", "azure-identity (>=1.12.0,<2.0.0)", "azure-search-documents (==11.4.0b8)", "openai (>=0,<1)"] +clarifai = ["clarifai (>=9.1.0)"] +cli = ["typer (>=0.9.0,<0.10.0)"] +cohere = ["cohere (>=4,<5)"] +docarray = ["docarray[hnswlib] (>=0.32.0,<0.33.0)"] +embeddings = ["sentence-transformers (>=2,<3)"] +extended-testing = ["aiosqlite (>=0.19.0,<0.20.0)", "amazon-textract-caller (<2)", "anthropic (>=0.3.11,<0.4.0)", "arxiv (>=1.4,<2.0)", "assemblyai (>=0.17.0,<0.18.0)", "atlassian-python-api (>=3.36.0,<4.0.0)", "beautifulsoup4 (>=4,<5)", "bibtexparser (>=1.4.0,<2.0.0)", "cassio (>=0.1.0,<0.2.0)", "chardet (>=5.1.0,<6.0.0)", "dashvector (>=1.0.1,<2.0.0)", "esprima (>=4.0.1,<5.0.0)", "faiss-cpu (>=1,<2)", "feedparser (>=6.0.10,<7.0.0)", "geopandas (>=0.13.1,<0.14.0)", "gitpython (>=3.1.32,<4.0.0)", "gql (>=3.4.1,<4.0.0)", "html2text (>=2020.1.16,<2021.0.0)", "jinja2 (>=3,<4)", "jq (>=1.4.1,<2.0.0)", "lxml (>=4.9.2,<5.0.0)", "markdownify (>=0.11.6,<0.12.0)", "motor (>=3.3.1,<4.0.0)", "mwparserfromhell (>=0.6.4,<0.7.0)", "mwxml (>=0.3.3,<0.4.0)", "newspaper3k (>=0.2.8,<0.3.0)", "numexpr (>=2.8.6,<3.0.0)", "openai (>=0,<1)", "openapi-pydantic (>=0.3.2,<0.4.0)", "pandas (>=2.0.1,<3.0.0)", "pdfminer-six (>=20221105,<20221106)", "pgvector (>=0.1.6,<0.2.0)", "psychicapi (>=0.8.0,<0.9.0)", "py-trello (>=0.19.0,<0.20.0)", "pymupdf (>=1.22.3,<2.0.0)", "pypdf (>=3.4.0,<4.0.0)", "pypdfium2 (>=4.10.0,<5.0.0)", "pyspark (>=3.4.0,<4.0.0)", "rank-bm25 (>=0.2.2,<0.3.0)", "rapidfuzz (>=3.1.1,<4.0.0)", "rapidocr-onnxruntime (>=1.3.2,<2.0.0)", "requests-toolbelt (>=1.0.0,<2.0.0)", "rspace_client (>=2.5.0,<3.0.0)", "scikit-learn (>=1.2.2,<2.0.0)", "sqlite-vss (>=0.1.2,<0.2.0)", "streamlit (>=1.18.0,<2.0.0)", "sympy (>=1.12,<2.0)", "telethon (>=1.28.5,<2.0.0)", "timescale-vector (>=0.0.1,<0.0.2)", "tqdm (>=4.48.0)", "upstash-redis (>=0.15.0,<0.16.0)", "xata (>=1.0.0a7,<2.0.0)", "xmltodict (>=0.13.0,<0.14.0)"] +javascript = ["esprima (>=4.0.1,<5.0.0)"] +llms = ["clarifai (>=9.1.0)", "cohere (>=4,<5)", "huggingface_hub (>=0,<1)", "manifest-ml (>=0.0.1,<0.0.2)", "nlpcloud (>=1,<2)", "openai (>=0,<1)", "openlm (>=0.0.5,<0.0.6)", "torch (>=1,<3)", "transformers (>=4,<5)"] +openai = ["openai (>=0,<1)", "tiktoken (>=0.3.2,<0.6.0)"] +qdrant = ["qdrant-client (>=1.3.1,<2.0.0)"] +text-helpers = ["chardet (>=5.1.0,<6.0.0)"] + +[[package]] +name = "langsmith" +version = "0.0.51" +description = "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform." +optional = false +python-versions = ">=3.8.1,<4.0" +files = [ + {file = "langsmith-0.0.51-py3-none-any.whl", hash = "sha256:6d65d038f8410344fba13a67437d1d7644a728983ca22ccf2c40dc32b8ba0368"}, + {file = "langsmith-0.0.51.tar.gz", hash = "sha256:b014e16d95c48797e6ed7a053c952bbd23d3034883df4bca13cc958334332a7f"}, +] + +[package.dependencies] +pydantic = ">=1,<3" +requests = ">=2,<3" + +[[package]] +name = "lazify" +version = "0.4.0" +description = "Lazify all the things!" +optional = false +python-versions = "*" +files = [ + {file = "Lazify-0.4.0-py2.py3-none-any.whl", hash = "sha256:c2c17a7a33e9406897e3f66fde4cd3f84716218d580330e5af10cfe5a0cd195a"}, + {file = "Lazify-0.4.0.tar.gz", hash = "sha256:7102bfe63e56de2ab62b3bc661a7190c4056771a8624f04a8b785275c3dd1f9b"}, +] + +[[package]] +name = "lazy-imports" +version = "0.3.1" +description = "Tool to support lazy imports" +optional = false +python-versions = ">=3.6" +files = [ + {file = "lazy_imports-0.3.1-py3-none-any.whl", hash = "sha256:149500cb1015726f5148155989386b30b425dfd7e48fd156385eb1c9e23887dd"}, + {file = "lazy_imports-0.3.1.tar.gz", hash = "sha256:636624104bf45b09761323e06292927832aca067c3c199e5de483738789aeb21"}, +] + +[package.extras] +all = ["black", "flake8", "isort", "mdformat", "mypy", "packaging", "pydocstyle", "pylint", "pylintfileheader", "pytest"] +checking = ["black", "flake8", "isort", "mdformat", "mypy", "pydocstyle", "pylint", "pylintfileheader"] +testing = ["packaging", "pytest"] + +[[package]] +name = "loguru" +version = "0.7.2" +description = "Python logging made (stupidly) simple" +optional = false +python-versions = ">=3.5" +files = [ + {file = "loguru-0.7.2-py3-none-any.whl", hash = "sha256:003d71e3d3ed35f0f8984898359d65b79e5b21943f78af86aa5491210429b8eb"}, + {file = "loguru-0.7.2.tar.gz", hash = "sha256:e671a53522515f34fd406340ee968cb9ecafbc4b36c679da03c18fd8d0bd51ac"}, +] + +[package.dependencies] +colorama = {version = ">=0.3.4", markers = "sys_platform == \"win32\""} +win32-setctime = {version = ">=1.0.0", markers = "sys_platform == \"win32\""} + +[package.extras] +dev = ["Sphinx (==7.2.5)", "colorama (==0.4.5)", "colorama (==0.4.6)", "exceptiongroup (==1.1.3)", "freezegun (==1.1.0)", "freezegun (==1.2.2)", "mypy (==v0.910)", "mypy (==v0.971)", "mypy (==v1.4.1)", "mypy (==v1.5.1)", "pre-commit (==3.4.0)", "pytest (==6.1.2)", "pytest (==7.4.0)", "pytest-cov (==2.12.1)", "pytest-cov (==4.1.0)", "pytest-mypy-plugins (==1.9.3)", "pytest-mypy-plugins (==3.0.0)", "sphinx-autobuild (==2021.3.14)", "sphinx-rtd-theme (==1.3.0)", "tox (==3.27.1)", "tox (==4.11.0)"] + +[[package]] +name = "markupsafe" +version = "2.1.3" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca379055a47383d02a5400cb0d110cef0a776fc644cda797db0c5696cfd7e18e"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7ff0f54cb4ff66dd38bebd335a38e2c22c41a8ee45aa608efc890ac3e3931bc"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c011a4149cfbcf9f03994ec2edffcb8b1dc2d2aede7ca243746df97a5d41ce48"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:56d9f2ecac662ca1611d183feb03a3fa4406469dafe241673d521dd5ae92a155"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win32.whl", hash = "sha256:8758846a7e80910096950b67071243da3e5a20ed2546e6392603c096778d48e0"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:787003c0ddb00500e49a10f2844fac87aa6ce977b90b0feaaf9de23c22508b24"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"}, + {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, +] + +[[package]] +name = "marshmallow" +version = "3.20.1" +description = "A lightweight library for converting complex datatypes to and from native Python datatypes." +optional = false +python-versions = ">=3.8" +files = [ + {file = "marshmallow-3.20.1-py3-none-any.whl", hash = "sha256:684939db93e80ad3561392f47be0230743131560a41c5110684c16e21ade0a5c"}, + {file = "marshmallow-3.20.1.tar.gz", hash = "sha256:5d2371bbe42000f2b3fb5eaa065224df7d8f8597bc19a1bbfa5bfe7fba8da889"}, +] + +[package.dependencies] +packaging = ">=17.0" + +[package.extras] +dev = ["flake8 (==6.0.0)", "flake8-bugbear (==23.7.10)", "mypy (==1.4.1)", "pre-commit (>=2.4,<4.0)", "pytest", "pytz", "simplejson", "tox"] +docs = ["alabaster (==0.7.13)", "autodocsumm (==0.2.11)", "sphinx (==7.0.1)", "sphinx-issues (==3.0.1)", "sphinx-version-warning (==1.1.2)"] +lint = ["flake8 (==6.0.0)", "flake8-bugbear (==23.7.10)", "mypy (==1.4.1)", "pre-commit (>=2.4,<4.0)"] +tests = ["pytest", "pytz", "simplejson"] + +[[package]] +name = "marshmallow-enum" +version = "1.5.1" +description = "Enum field for Marshmallow" +optional = false +python-versions = "*" +files = [ + {file = "marshmallow-enum-1.5.1.tar.gz", hash = "sha256:38e697e11f45a8e64b4a1e664000897c659b60aa57bfa18d44e226a9920b6e58"}, + {file = "marshmallow_enum-1.5.1-py2.py3-none-any.whl", hash = "sha256:57161ab3dbfde4f57adeb12090f39592e992b9c86d206d02f6bd03ebec60f072"}, +] + +[package.dependencies] +marshmallow = ">=2.0.0" + +[[package]] +name = "monotonic" +version = "1.6" +description = "An implementation of time.monotonic() for Python 2 & < 3.3" +optional = false +python-versions = "*" +files = [ + {file = "monotonic-1.6-py2.py3-none-any.whl", hash = "sha256:68687e19a14f11f26d140dd5c86f3dba4bf5df58003000ed467e0e2a69bca96c"}, + {file = "monotonic-1.6.tar.gz", hash = "sha256:3a55207bcfed53ddd5c5bae174524062935efed17792e9de2ad0205ce9ad63f7"}, +] + +[[package]] +name = "more-itertools" +version = "10.1.0" +description = "More routines for operating on iterables, beyond itertools" +optional = false +python-versions = ">=3.8" +files = [ + {file = "more-itertools-10.1.0.tar.gz", hash = "sha256:626c369fa0eb37bac0291bce8259b332fd59ac792fa5497b59837309cd5b114a"}, + {file = "more_itertools-10.1.0-py3-none-any.whl", hash = "sha256:64e0735fcfdc6f3464ea133afe8ea4483b1c5fe3a3d69852e6503b43a0b222e6"}, +] + +[[package]] +name = "mpmath" +version = "1.3.0" +description = "Python library for arbitrary-precision floating-point arithmetic" +optional = false +python-versions = "*" +files = [ + {file = "mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c"}, + {file = "mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f"}, +] + +[package.extras] +develop = ["codecov", "pycodestyle", "pytest (>=4.6)", "pytest-cov", "wheel"] +docs = ["sphinx"] +gmpy = ["gmpy2 (>=2.1.0a4)"] +tests = ["pytest (>=4.6)"] + +[[package]] +name = "multidict" +version = "6.0.4" +description = "multidict implementation" +optional = false +python-versions = ">=3.7" +files = [ + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b1a97283e0c85772d613878028fec909f003993e1007eafa715b24b377cb9b8"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeb6dcc05e911516ae3d1f207d4b0520d07f54484c49dfc294d6e7d63b734171"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d6d635d5209b82a3492508cf5b365f3446afb65ae7ebd755e70e18f287b0adf7"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c048099e4c9e9d615545e2001d3d8a4380bd403e1a0578734e0d31703d1b0c0b"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea20853c6dbbb53ed34cb4d080382169b6f4554d394015f1bef35e881bf83547"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16d232d4e5396c2efbbf4f6d4df89bfa905eb0d4dc5b3549d872ab898451f569"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36c63aaa167f6c6b04ef2c85704e93af16c11d20de1d133e39de6a0e84582a93"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:64bdf1086b6043bf519869678f5f2757f473dee970d7abf6da91ec00acb9cb98"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:43644e38f42e3af682690876cff722d301ac585c5b9e1eacc013b7a3f7b696a0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7582a1d1030e15422262de9f58711774e02fa80df0d1578995c76214f6954988"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ddff9c4e225a63a5afab9dd15590432c22e8057e1a9a13d28ed128ecf047bbdc"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ee2a1ece51b9b9e7752e742cfb661d2a29e7bcdba2d27e66e28a99f1890e4fa0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a2e4369eb3d47d2034032a26c7a80fcb21a2cb22e1173d761a162f11e562caa5"}, + {file = "multidict-6.0.4-cp310-cp310-win32.whl", hash = "sha256:574b7eae1ab267e5f8285f0fe881f17efe4b98c39a40858247720935b893bba8"}, + {file = "multidict-6.0.4-cp310-cp310-win_amd64.whl", hash = "sha256:4dcbb0906e38440fa3e325df2359ac6cb043df8e58c965bb45f4e406ecb162cc"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0dfad7a5a1e39c53ed00d2dd0c2e36aed4650936dc18fd9a1826a5ae1cad6f03"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:64da238a09d6039e3bd39bb3aee9c21a5e34f28bfa5aa22518581f910ff94af3"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ff959bee35038c4624250473988b24f846cbeb2c6639de3602c073f10410ceba"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01a3a55bd90018c9c080fbb0b9f4891db37d148a0a18722b42f94694f8b6d4c9"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c5cb09abb18c1ea940fb99360ea0396f34d46566f157122c92dfa069d3e0e982"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:666daae833559deb2d609afa4490b85830ab0dfca811a98b70a205621a6109fe"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11bdf3f5e1518b24530b8241529d2050014c884cf18b6fc69c0c2b30ca248710"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d18748f2d30f94f498e852c67d61261c643b349b9d2a581131725595c45ec6c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:458f37be2d9e4c95e2d8866a851663cbc76e865b78395090786f6cd9b3bbf4f4"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b1a2eeedcead3a41694130495593a559a668f382eee0727352b9a41e1c45759a"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7d6ae9d593ef8641544d6263c7fa6408cc90370c8cb2bbb65f8d43e5b0351d9c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5979b5632c3e3534e42ca6ff856bb24b2e3071b37861c2c727ce220d80eee9ed"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dcfe792765fab89c365123c81046ad4103fcabbc4f56d1c1997e6715e8015461"}, + {file = "multidict-6.0.4-cp311-cp311-win32.whl", hash = "sha256:3601a3cece3819534b11d4efc1eb76047488fddd0c85a3948099d5da4d504636"}, + {file = "multidict-6.0.4-cp311-cp311-win_amd64.whl", hash = "sha256:81a4f0b34bd92df3da93315c6a59034df95866014ac08535fc819f043bfd51f0"}, + {file = "multidict-6.0.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:67040058f37a2a51ed8ea8f6b0e6ee5bd78ca67f169ce6122f3e2ec80dfe9b78"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:853888594621e6604c978ce2a0444a1e6e70c8d253ab65ba11657659dcc9100f"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:39ff62e7d0f26c248b15e364517a72932a611a9b75f35b45be078d81bdb86603"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af048912e045a2dc732847d33821a9d84ba553f5c5f028adbd364dd4765092ac"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e8b901e607795ec06c9e42530788c45ac21ef3aaa11dbd0c69de543bfb79a9"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62501642008a8b9871ddfccbf83e4222cf8ac0d5aeedf73da36153ef2ec222d2"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:99b76c052e9f1bc0721f7541e5e8c05db3941eb9ebe7b8553c625ef88d6eefde"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:509eac6cf09c794aa27bcacfd4d62c885cce62bef7b2c3e8b2e49d365b5003fe"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:21a12c4eb6ddc9952c415f24eef97e3e55ba3af61f67c7bc388dcdec1404a067"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:5cad9430ab3e2e4fa4a2ef4450f548768400a2ac635841bc2a56a2052cdbeb87"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ab55edc2e84460694295f401215f4a58597f8f7c9466faec545093045476327d"}, + {file = "multidict-6.0.4-cp37-cp37m-win32.whl", hash = "sha256:5a4dcf02b908c3b8b17a45fb0f15b695bf117a67b76b7ad18b73cf8e92608775"}, + {file = "multidict-6.0.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6ed5f161328b7df384d71b07317f4d8656434e34591f20552c7bcef27b0ab88e"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5fc1b16f586f049820c5c5b17bb4ee7583092fa0d1c4e28b5239181ff9532e0c"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1502e24330eb681bdaa3eb70d6358e818e8e8f908a22a1851dfd4e15bc2f8161"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b692f419760c0e65d060959df05f2a531945af31fda0c8a3b3195d4efd06de11"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45e1ecb0379bfaab5eef059f50115b54571acfbe422a14f668fc8c27ba410e7e"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddd3915998d93fbcd2566ddf9cf62cdb35c9e093075f862935573d265cf8f65d"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:59d43b61c59d82f2effb39a93c48b845efe23a3852d201ed2d24ba830d0b4cf2"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc8e1d0c705233c5dd0c5e6460fbad7827d5d36f310a0fadfd45cc3029762258"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6aa0418fcc838522256761b3415822626f866758ee0bc6632c9486b179d0b52"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6748717bb10339c4760c1e63da040f5f29f5ed6e59d76daee30305894069a660"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4d1a3d7ef5e96b1c9e92f973e43aa5e5b96c659c9bc3124acbbd81b0b9c8a951"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4372381634485bec7e46718edc71528024fcdc6f835baefe517b34a33c731d60"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:fc35cb4676846ef752816d5be2193a1e8367b4c1397b74a565a9d0389c433a1d"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b9d9e4e2b37daddb5c23ea33a3417901fa7c7b3dee2d855f63ee67a0b21e5b1"}, + {file = "multidict-6.0.4-cp38-cp38-win32.whl", hash = "sha256:e41b7e2b59679edfa309e8db64fdf22399eec4b0b24694e1b2104fb789207779"}, + {file = "multidict-6.0.4-cp38-cp38-win_amd64.whl", hash = "sha256:d6c254ba6e45d8e72739281ebc46ea5eb5f101234f3ce171f0e9f5cc86991480"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16ab77bbeb596e14212e7bab8429f24c1579234a3a462105cda4a66904998664"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc779e9e6f7fda81b3f9aa58e3a6091d49ad528b11ed19f6621408806204ad35"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4ceef517eca3e03c1cceb22030a3e39cb399ac86bff4e426d4fc6ae49052cc60"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:281af09f488903fde97923c7744bb001a9b23b039a909460d0f14edc7bf59706"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:52f2dffc8acaba9a2f27174c41c9e57f60b907bb9f096b36b1a1f3be71c6284d"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b41156839806aecb3641f3208c0dafd3ac7775b9c4c422d82ee2a45c34ba81ca"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5e3fc56f88cc98ef8139255cf8cd63eb2c586531e43310ff859d6bb3a6b51f1"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8316a77808c501004802f9beebde51c9f857054a0c871bd6da8280e718444449"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f70b98cd94886b49d91170ef23ec5c0e8ebb6f242d734ed7ed677b24d50c82cf"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bf6774e60d67a9efe02b3616fee22441d86fab4c6d335f9d2051d19d90a40063"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:e69924bfcdda39b722ef4d9aa762b2dd38e4632b3641b1d9a57ca9cd18f2f83a"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:6b181d8c23da913d4ff585afd1155a0e1194c0b50c54fcfe286f70cdaf2b7176"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:52509b5be062d9eafc8170e53026fbc54cf3b32759a23d07fd935fb04fc22d95"}, + {file = "multidict-6.0.4-cp39-cp39-win32.whl", hash = "sha256:27c523fbfbdfd19c6867af7346332b62b586eed663887392cff78d614f9ec313"}, + {file = "multidict-6.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:33029f5734336aa0d4c0384525da0387ef89148dc7191aae00ca5fb23d7aafc2"}, + {file = "multidict-6.0.4.tar.gz", hash = "sha256:3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"}, +] + +[[package]] +name = "multiprocess" +version = "0.70.15" +description = "better multiprocessing and multithreading in Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "multiprocess-0.70.15-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:aa36c7ed16f508091438687fe9baa393a7a8e206731d321e443745e743a0d4e5"}, + {file = "multiprocess-0.70.15-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:20e024018c46d0d1602024c613007ac948f9754659e3853b0aa705e83f6931d8"}, + {file = "multiprocess-0.70.15-pp37-pypy37_pp73-manylinux_2_24_i686.whl", hash = "sha256:e576062981c91f0fe8a463c3d52506e598dfc51320a8dd8d78b987dfca91c5db"}, + {file = "multiprocess-0.70.15-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:e73f497e6696a0f5433ada2b3d599ae733b87a6e8b008e387c62ac9127add177"}, + {file = "multiprocess-0.70.15-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:73db2e7b32dcc7f9b0f075c2ffa45c90b6729d3f1805f27e88534c8d321a1be5"}, + {file = "multiprocess-0.70.15-pp38-pypy38_pp73-manylinux_2_24_i686.whl", hash = "sha256:4271647bd8a49c28ecd6eb56a7fdbd3c212c45529ad5303b40b3c65fc6928e5f"}, + {file = "multiprocess-0.70.15-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:cf981fb998d6ec3208cb14f0cf2e9e80216e834f5d51fd09ebc937c32b960902"}, + {file = "multiprocess-0.70.15-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:18f9f2c7063346d1617bd1684fdcae8d33380ae96b99427260f562e1a1228b67"}, + {file = "multiprocess-0.70.15-pp39-pypy39_pp73-manylinux_2_24_i686.whl", hash = "sha256:0eac53214d664c49a34695e5824872db4006b1a465edd7459a251809c3773370"}, + {file = "multiprocess-0.70.15-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:1a51dd34096db47fb21fa2b839e615b051d51b97af9a67afbcdaa67186b44883"}, + {file = "multiprocess-0.70.15-py310-none-any.whl", hash = "sha256:7dd58e33235e83cf09d625e55cffd7b0f0eede7ee9223cdd666a87624f60c21a"}, + {file = "multiprocess-0.70.15-py311-none-any.whl", hash = "sha256:134f89053d82c9ed3b73edd3a2531eb791e602d4f4156fc92a79259590bd9670"}, + {file = "multiprocess-0.70.15-py37-none-any.whl", hash = "sha256:f7d4a1629bccb433114c3b4885f69eccc200994323c80f6feee73b0edc9199c5"}, + {file = "multiprocess-0.70.15-py38-none-any.whl", hash = "sha256:bee9afba476c91f9ebee7beeee0601face9eff67d822e893f9a893725fbd6316"}, + {file = "multiprocess-0.70.15-py39-none-any.whl", hash = "sha256:3e0953f5d52b4c76f1c973eaf8214554d146f2be5decb48e928e55c7a2d19338"}, + {file = "multiprocess-0.70.15.tar.gz", hash = "sha256:f20eed3036c0ef477b07a4177cf7c1ba520d9a2677870a4f47fe026f0cd6787e"}, +] + +[package.dependencies] +dill = ">=0.3.7" + +[[package]] +name = "mypy-extensions" +version = "1.0.0" +description = "Type system extensions for programs checked with the mypy type checker." +optional = false +python-versions = ">=3.5" +files = [ + {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, + {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, +] + +[[package]] +name = "nest-asyncio" +version = "1.5.8" +description = "Patch asyncio to allow nested event loops" +optional = false +python-versions = ">=3.5" +files = [ + {file = "nest_asyncio-1.5.8-py3-none-any.whl", hash = "sha256:accda7a339a70599cb08f9dd09a67e0c2ef8d8d6f4c07f96ab203f2ae254e48d"}, + {file = "nest_asyncio-1.5.8.tar.gz", hash = "sha256:25aa2ca0d2a5b5531956b9e273b45cf664cae2b145101d73b86b199978d48fdb"}, +] + +[[package]] +name = "networkx" +version = "3.2" +description = "Python package for creating and manipulating graphs and networks" +optional = false +python-versions = ">=3.9" +files = [ + {file = "networkx-3.2-py3-none-any.whl", hash = "sha256:8b25f564bd28f94ac821c58b04ae1a3109e73b001a7d476e4bb0d00d63706bf8"}, + {file = "networkx-3.2.tar.gz", hash = "sha256:bda29edf392d9bfa5602034c767d28549214ec45f620081f0b74dc036a1fbbc1"}, +] + +[package.extras] +default = ["matplotlib (>=3.5)", "numpy (>=1.22)", "pandas (>=1.4)", "scipy (>=1.9,!=1.11.0,!=1.11.1)"] +developer = ["changelist (==0.4)", "mypy (>=1.1)", "pre-commit (>=3.2)", "rtoml"] +doc = ["nb2plots (>=0.7)", "nbconvert (<7.9)", "numpydoc (>=1.6)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.14)", "sphinx (>=7)", "sphinx-gallery (>=0.14)", "texext (>=0.6.7)"] +extra = ["lxml (>=4.6)", "pydot (>=1.4.2)", "pygraphviz (>=1.11)", "sympy (>=1.10)"] +test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"] + +[[package]] +name = "nltk" +version = "3.8.1" +description = "Natural Language Toolkit" +optional = false +python-versions = ">=3.7" +files = [ + {file = "nltk-3.8.1-py3-none-any.whl", hash = "sha256:fd5c9109f976fa86bcadba8f91e47f5e9293bd034474752e92a520f81c93dda5"}, + {file = "nltk-3.8.1.zip", hash = "sha256:1834da3d0682cba4f2cede2f9aad6b0fafb6461ba451db0efb6f9c39798d64d3"}, +] + +[package.dependencies] +click = "*" +joblib = "*" +regex = ">=2021.8.3" +tqdm = "*" + +[package.extras] +all = ["matplotlib", "numpy", "pyparsing", "python-crfsuite", "requests", "scikit-learn", "scipy", "twython"] +corenlp = ["requests"] +machine-learning = ["numpy", "python-crfsuite", "scikit-learn", "scipy"] +plot = ["matplotlib"] +tgrep = ["pyparsing"] +twitter = ["twython"] + +[[package]] +name = "nodeenv" +version = "1.8.0" +description = "Node.js virtual environment builder" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" +files = [ + {file = "nodeenv-1.8.0-py2.py3-none-any.whl", hash = "sha256:df865724bb3c3adc86b3876fa209771517b0cfe596beff01a92700e0e8be4cec"}, + {file = "nodeenv-1.8.0.tar.gz", hash = "sha256:d51e0c37e64fbf47d017feac3145cdbb58836d7eee8c6f6d3b6880c5456227d2"}, +] + +[package.dependencies] +setuptools = "*" + +[[package]] +name = "num2words" +version = "0.5.13" +description = "Modules to convert numbers to words. Easily extensible." +optional = false +python-versions = "*" +files = [ + {file = "num2words-0.5.13-py3-none-any.whl", hash = "sha256:39e662c663f0a7e15415431ea68eb3dc711b49e3b776d93403e1da0a219ca4ee"}, + {file = "num2words-0.5.13.tar.gz", hash = "sha256:a3064716fbbf90d75c449450cebfbc73a6a13e63b2531d09bdecc3ab1a2209cf"}, +] + +[package.dependencies] +docopt = ">=0.6.2" + +[[package]] +name = "numpy" +version = "1.25.0" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "numpy-1.25.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8aa130c3042052d656751df5e81f6d61edff3e289b5994edcf77f54118a8d9f4"}, + {file = "numpy-1.25.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e3f2b96e3b63c978bc29daaa3700c028fe3f049ea3031b58aa33fe2a5809d24"}, + {file = "numpy-1.25.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6b267f349a99d3908b56645eebf340cb58f01bd1e773b4eea1a905b3f0e4208"}, + {file = "numpy-1.25.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4aedd08f15d3045a4e9c648f1e04daca2ab1044256959f1f95aafeeb3d794c16"}, + {file = "numpy-1.25.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6d183b5c58513f74225c376643234c369468e02947b47942eacbb23c1671f25d"}, + {file = "numpy-1.25.0-cp310-cp310-win32.whl", hash = "sha256:d76a84998c51b8b68b40448ddd02bd1081bb33abcdc28beee6cd284fe11036c6"}, + {file = "numpy-1.25.0-cp310-cp310-win_amd64.whl", hash = "sha256:c0dc071017bc00abb7d7201bac06fa80333c6314477b3d10b52b58fa6a6e38f6"}, + {file = "numpy-1.25.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c69fe5f05eea336b7a740e114dec995e2f927003c30702d896892403df6dbf0"}, + {file = "numpy-1.25.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9c7211d7920b97aeca7b3773a6783492b5b93baba39e7c36054f6e749fc7490c"}, + {file = "numpy-1.25.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ecc68f11404930e9c7ecfc937aa423e1e50158317bf67ca91736a9864eae0232"}, + {file = "numpy-1.25.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e559c6afbca484072a98a51b6fa466aae785cfe89b69e8b856c3191bc8872a82"}, + {file = "numpy-1.25.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6c284907e37f5e04d2412950960894b143a648dea3f79290757eb878b91acbd1"}, + {file = "numpy-1.25.0-cp311-cp311-win32.whl", hash = "sha256:95367ccd88c07af21b379be1725b5322362bb83679d36691f124a16357390153"}, + {file = "numpy-1.25.0-cp311-cp311-win_amd64.whl", hash = "sha256:b76aa836a952059d70a2788a2d98cb2a533ccd46222558b6970348939e55fc24"}, + {file = "numpy-1.25.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b792164e539d99d93e4e5e09ae10f8cbe5466de7d759fc155e075237e0c274e4"}, + {file = "numpy-1.25.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7cd981ccc0afe49b9883f14761bb57c964df71124dcd155b0cba2b591f0d64b9"}, + {file = "numpy-1.25.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5aa48bebfb41f93043a796128854b84407d4df730d3fb6e5dc36402f5cd594c0"}, + {file = "numpy-1.25.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5177310ac2e63d6603f659fadc1e7bab33dd5a8db4e0596df34214eeab0fee3b"}, + {file = "numpy-1.25.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0ac6edfb35d2a99aaf102b509c8e9319c499ebd4978df4971b94419a116d0790"}, + {file = "numpy-1.25.0-cp39-cp39-win32.whl", hash = "sha256:7412125b4f18aeddca2ecd7219ea2d2708f697943e6f624be41aa5f8a9852cc4"}, + {file = "numpy-1.25.0-cp39-cp39-win_amd64.whl", hash = "sha256:26815c6c8498dc49d81faa76d61078c4f9f0859ce7817919021b9eba72b425e3"}, + {file = "numpy-1.25.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5b1b90860bf7d8a8c313b372d4f27343a54f415b20fb69dd601b7efe1029c91e"}, + {file = "numpy-1.25.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85cdae87d8c136fd4da4dad1e48064d700f63e923d5af6c8c782ac0df8044542"}, + {file = "numpy-1.25.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:cc3fda2b36482891db1060f00f881c77f9423eead4c3579629940a3e12095fe8"}, + {file = "numpy-1.25.0.tar.gz", hash = "sha256:f1accae9a28dc3cda46a91de86acf69de0d1b5f4edd44a9b0c3ceb8036dfff19"}, +] + +[[package]] +name = "openai" +version = "0.28.1" +description = "Python client library for the OpenAI API" +optional = false +python-versions = ">=3.7.1" +files = [ + {file = "openai-0.28.1-py3-none-any.whl", hash = "sha256:d18690f9e3d31eedb66b57b88c2165d760b24ea0a01f150dd3f068155088ce68"}, + {file = "openai-0.28.1.tar.gz", hash = "sha256:4be1dad329a65b4ce1a660fe6d5431b438f429b5855c883435f0f7fcb6d2dcc8"}, +] + +[package.dependencies] +aiohttp = "*" +requests = ">=2.20" +tqdm = "*" + +[package.extras] +datalib = ["numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)"] +dev = ["black (>=21.6b0,<22.0)", "pytest (==6.*)", "pytest-asyncio", "pytest-mock"] +embeddings = ["matplotlib", "numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "plotly", "scikit-learn (>=1.0.2)", "scipy", "tenacity (>=8.0.1)"] +wandb = ["numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "wandb"] + +[[package]] +name = "opentelemetry-api" +version = "1.20.0" +description = "OpenTelemetry Python API" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_api-1.20.0-py3-none-any.whl", hash = "sha256:982b76036fec0fdaf490ae3dfd9f28c81442a33414f737abc687a32758cdcba5"}, + {file = "opentelemetry_api-1.20.0.tar.gz", hash = "sha256:06abe351db7572f8afdd0fb889ce53f3c992dbf6f6262507b385cc1963e06983"}, +] + +[package.dependencies] +deprecated = ">=1.2.6" +importlib-metadata = ">=6.0,<7.0" + +[[package]] +name = "opentelemetry-exporter-otlp" +version = "1.20.0" +description = "OpenTelemetry Collector Exporters" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_exporter_otlp-1.20.0-py3-none-any.whl", hash = "sha256:3b4d47726da83fef84467bdf96da4f8f3d1a61b35db3c16354c391ce8e9decf6"}, + {file = "opentelemetry_exporter_otlp-1.20.0.tar.gz", hash = "sha256:f8cb69f80c333166e5cfaa030f9e28f7faaf343aff24caaa2cb4202ea4849b6b"}, +] + +[package.dependencies] +opentelemetry-exporter-otlp-proto-grpc = "1.20.0" +opentelemetry-exporter-otlp-proto-http = "1.20.0" + +[[package]] +name = "opentelemetry-exporter-otlp-proto-common" +version = "1.20.0" +description = "OpenTelemetry Protobuf encoding" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_exporter_otlp_proto_common-1.20.0-py3-none-any.whl", hash = "sha256:dd63209b40702636ab6ae76a06b401b646ad7b008a906ecb41222d4af24fbdef"}, + {file = "opentelemetry_exporter_otlp_proto_common-1.20.0.tar.gz", hash = "sha256:df60c681bd61812e50b3a39a7a1afeeb6d4066117583249fcc262269374e7a49"}, +] + +[package.dependencies] +backoff = {version = ">=1.10.0,<3.0.0", markers = "python_version >= \"3.7\""} +opentelemetry-proto = "1.20.0" + +[[package]] +name = "opentelemetry-exporter-otlp-proto-grpc" +version = "1.20.0" +description = "OpenTelemetry Collector Protobuf over gRPC Exporter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_exporter_otlp_proto_grpc-1.20.0-py3-none-any.whl", hash = "sha256:7c3f066065891b56348ba2c7f9df6ec635a712841cae0a36f2f6a81642ae7dec"}, + {file = "opentelemetry_exporter_otlp_proto_grpc-1.20.0.tar.gz", hash = "sha256:6c06d43c3771bda1795226e327722b4b980fa1ca1ec9e985f2ef3e29795bdd52"}, +] + +[package.dependencies] +backoff = {version = ">=1.10.0,<3.0.0", markers = "python_version >= \"3.7\""} +deprecated = ">=1.2.6" +googleapis-common-protos = ">=1.52,<2.0" +grpcio = ">=1.0.0,<2.0.0" +opentelemetry-api = ">=1.15,<2.0" +opentelemetry-exporter-otlp-proto-common = "1.20.0" +opentelemetry-proto = "1.20.0" +opentelemetry-sdk = ">=1.20.0,<1.21.0" + +[package.extras] +test = ["pytest-grpc"] + +[[package]] +name = "opentelemetry-exporter-otlp-proto-http" +version = "1.20.0" +description = "OpenTelemetry Collector Protobuf over HTTP Exporter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_exporter_otlp_proto_http-1.20.0-py3-none-any.whl", hash = "sha256:03f6e768ad25f1c3a9586e8c695db4a4adf978f8546a1285fa962e16bfbb0bd6"}, + {file = "opentelemetry_exporter_otlp_proto_http-1.20.0.tar.gz", hash = "sha256:500f42821420fdf0759193d6438edc0f4e984a83e14c08a23023c06a188861b4"}, +] + +[package.dependencies] +backoff = {version = ">=1.10.0,<3.0.0", markers = "python_version >= \"3.7\""} +deprecated = ">=1.2.6" +googleapis-common-protos = ">=1.52,<2.0" +opentelemetry-api = ">=1.15,<2.0" +opentelemetry-exporter-otlp-proto-common = "1.20.0" +opentelemetry-proto = "1.20.0" +opentelemetry-sdk = ">=1.20.0,<1.21.0" +requests = ">=2.7,<3.0" + +[package.extras] +test = ["responses (==0.22.0)"] + +[[package]] +name = "opentelemetry-instrumentation" +version = "0.41b0" +description = "Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_instrumentation-0.41b0-py3-none-any.whl", hash = "sha256:0ef9e5705ceca0205992a4a845ae4251ce6ec15a1206ca07c2b00afb0c5bd386"}, + {file = "opentelemetry_instrumentation-0.41b0.tar.gz", hash = "sha256:214382ba10dfd29d4e24898a4c7ef18b7368178a6277a1aec95cdb75cabf4612"}, +] + +[package.dependencies] +opentelemetry-api = ">=1.4,<2.0" +setuptools = ">=16.0" +wrapt = ">=1.0.0,<2.0.0" + +[[package]] +name = "opentelemetry-proto" +version = "1.20.0" +description = "OpenTelemetry Python Proto" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_proto-1.20.0-py3-none-any.whl", hash = "sha256:512c3d2c6864fb7547a69577c3907348e6c985b7a204533563cb4c4c5046203b"}, + {file = "opentelemetry_proto-1.20.0.tar.gz", hash = "sha256:cf01f49b3072ee57468bccb1a4f93bdb55411f4512d0ac3f97c5c04c0040b5a2"}, +] + +[package.dependencies] +protobuf = ">=3.19,<5.0" + +[[package]] +name = "opentelemetry-sdk" +version = "1.20.0" +description = "OpenTelemetry Python SDK" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_sdk-1.20.0-py3-none-any.whl", hash = "sha256:f2230c276ff4c63ea09b3cb2e2ac6b1265f90af64e8d16bbf275c81a9ce8e804"}, + {file = "opentelemetry_sdk-1.20.0.tar.gz", hash = "sha256:702e432a457fa717fd2ddfd30640180e69938f85bb7fec3e479f85f61c1843f8"}, +] + +[package.dependencies] +opentelemetry-api = "1.20.0" +opentelemetry-semantic-conventions = "0.41b0" +typing-extensions = ">=3.7.4" + +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.41b0" +description = "OpenTelemetry Semantic Conventions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "opentelemetry_semantic_conventions-0.41b0-py3-none-any.whl", hash = "sha256:45404391ed9e50998183a4925ad1b497c01c143f06500c3b9c3d0013492bb0f2"}, + {file = "opentelemetry_semantic_conventions-0.41b0.tar.gz", hash = "sha256:0ce5b040b8a3fc816ea5879a743b3d6fe5db61f6485e4def94c6ee4d402e1eb7"}, +] + +[[package]] +name = "packaging" +version = "23.2" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.7" +files = [ + {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, + {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, +] + +[[package]] +name = "pandas" +version = "2.1.0" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pandas-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:40dd20439ff94f1b2ed55b393ecee9cb6f3b08104c2c40b0cb7186a2f0046242"}, + {file = "pandas-2.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d4f38e4fedeba580285eaac7ede4f686c6701a9e618d8a857b138a126d067f2f"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e6a0fe052cf27ceb29be9429428b4918f3740e37ff185658f40d8702f0b3e09"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d81e1813191070440d4c7a413cb673052b3b4a984ffd86b8dd468c45742d3cc"}, + {file = "pandas-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:eb20252720b1cc1b7d0b2879ffc7e0542dd568f24d7c4b2347cb035206936421"}, + {file = "pandas-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:38f74ef7ebc0ffb43b3d633e23d74882bce7e27bfa09607f3c5d3e03ffd9a4a5"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cda72cc8c4761c8f1d97b169661f23a86b16fdb240bdc341173aee17e4d6cedd"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d97daeac0db8c993420b10da4f5f5b39b01fc9ca689a17844e07c0a35ac96b4b"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8c58b1113892e0c8078f006a167cc210a92bdae23322bb4614f2f0b7a4b510f"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:629124923bcf798965b054a540f9ccdfd60f71361255c81fa1ecd94a904b9dd3"}, + {file = "pandas-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:70cf866af3ab346a10debba8ea78077cf3a8cd14bd5e4bed3d41555a3280041c"}, + {file = "pandas-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:d53c8c1001f6a192ff1de1efe03b31a423d0eee2e9e855e69d004308e046e694"}, + {file = "pandas-2.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:86f100b3876b8c6d1a2c66207288ead435dc71041ee4aea789e55ef0e06408cb"}, + {file = "pandas-2.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28f330845ad21c11db51e02d8d69acc9035edfd1116926ff7245c7215db57957"}, + {file = "pandas-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9a6ccf0963db88f9b12df6720e55f337447aea217f426a22d71f4213a3099a6"}, + {file = "pandas-2.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d99e678180bc59b0c9443314297bddce4ad35727a1a2656dbe585fd78710b3b9"}, + {file = "pandas-2.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b31da36d376d50a1a492efb18097b9101bdbd8b3fbb3f49006e02d4495d4c644"}, + {file = "pandas-2.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0164b85937707ec7f70b34a6c3a578dbf0f50787f910f21ca3b26a7fd3363437"}, + {file = "pandas-2.1.0.tar.gz", hash = "sha256:62c24c7fc59e42b775ce0679cfa7b14a5f9bfb7643cfbe708c960699e05fb918"}, +] + +[package.dependencies] +numpy = [ + {version = ">=1.22.4", markers = "python_version < \"3.11\""}, + {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, +] +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.1" + +[package.extras] +all = ["PyQt5 (>=5.15.6)", "SQLAlchemy (>=1.4.36)", "beautifulsoup4 (>=4.11.1)", "bottleneck (>=1.3.4)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=0.8.1)", "fsspec (>=2022.05.0)", "gcsfs (>=2022.05.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.8.0)", "matplotlib (>=3.6.1)", "numba (>=0.55.2)", "numexpr (>=2.8.0)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pandas-gbq (>=0.17.5)", "psycopg2 (>=2.9.3)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.5)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "pyxlsb (>=1.0.9)", "qtpy (>=2.2.0)", "s3fs (>=2022.05.0)", "scipy (>=1.8.1)", "tables (>=3.7.0)", "tabulate (>=0.8.10)", "xarray (>=2022.03.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)", "zstandard (>=0.17.0)"] +aws = ["s3fs (>=2022.05.0)"] +clipboard = ["PyQt5 (>=5.15.6)", "qtpy (>=2.2.0)"] +compression = ["zstandard (>=0.17.0)"] +computation = ["scipy (>=1.8.1)", "xarray (>=2022.03.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pyxlsb (>=1.0.9)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)"] +feather = ["pyarrow (>=7.0.0)"] +fss = ["fsspec (>=2022.05.0)"] +gcp = ["gcsfs (>=2022.05.0)", "pandas-gbq (>=0.17.5)"] +hdf5 = ["tables (>=3.7.0)"] +html = ["beautifulsoup4 (>=4.11.1)", "html5lib (>=1.1)", "lxml (>=4.8.0)"] +mysql = ["SQLAlchemy (>=1.4.36)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.8.10)"] +parquet = ["pyarrow (>=7.0.0)"] +performance = ["bottleneck (>=1.3.4)", "numba (>=0.55.2)", "numexpr (>=2.8.0)"] +plot = ["matplotlib (>=3.6.1)"] +postgresql = ["SQLAlchemy (>=1.4.36)", "psycopg2 (>=2.9.3)"] +spss = ["pyreadstat (>=1.1.5)"] +sql-other = ["SQLAlchemy (>=1.4.36)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.8.0)"] + +[[package]] +name = "pillow" +version = "10.1.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "Pillow-10.1.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:1ab05f3db77e98f93964697c8efc49c7954b08dd61cff526b7f2531a22410106"}, + {file = "Pillow-10.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6932a7652464746fcb484f7fc3618e6503d2066d853f68a4bd97193a3996e273"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f63b5a68daedc54c7c3464508d8c12075e56dcfbd42f8c1bf40169061ae666"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0949b55eb607898e28eaccb525ab104b2d86542a85c74baf3a6dc24002edec2"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:ae88931f93214777c7a3aa0a8f92a683f83ecde27f65a45f95f22d289a69e593"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b0eb01ca85b2361b09480784a7931fc648ed8b7836f01fb9241141b968feb1db"}, + {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d27b5997bdd2eb9fb199982bb7eb6164db0426904020dc38c10203187ae2ff2f"}, + {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7df5608bc38bd37ef585ae9c38c9cd46d7c81498f086915b0f97255ea60c2818"}, + {file = "Pillow-10.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:41f67248d92a5e0a2076d3517d8d4b1e41a97e2df10eb8f93106c89107f38b57"}, + {file = "Pillow-10.1.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1fb29c07478e6c06a46b867e43b0bcdb241b44cc52be9bc25ce5944eed4648e7"}, + {file = "Pillow-10.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2cdc65a46e74514ce742c2013cd4a2d12e8553e3a2563c64879f7c7e4d28bce7"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50d08cd0a2ecd2a8657bd3d82c71efd5a58edb04d9308185d66c3a5a5bed9610"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:062a1610e3bc258bff2328ec43f34244fcec972ee0717200cb1425214fe5b839"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:61f1a9d247317fa08a308daaa8ee7b3f760ab1809ca2da14ecc88ae4257d6172"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a646e48de237d860c36e0db37ecaecaa3619e6f3e9d5319e527ccbc8151df061"}, + {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:47e5bf85b80abc03be7455c95b6d6e4896a62f6541c1f2ce77a7d2bb832af262"}, + {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a92386125e9ee90381c3369f57a2a50fa9e6aa8b1cf1d9c4b200d41a7dd8e992"}, + {file = "Pillow-10.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:0f7c276c05a9767e877a0b4c5050c8bee6a6d960d7f0c11ebda6b99746068c2a"}, + {file = "Pillow-10.1.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:a89b8312d51715b510a4fe9fc13686283f376cfd5abca8cd1c65e4c76e21081b"}, + {file = "Pillow-10.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:00f438bb841382b15d7deb9a05cc946ee0f2c352653c7aa659e75e592f6fa17d"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d929a19f5469b3f4df33a3df2983db070ebb2088a1e145e18facbc28cae5b27"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a92109192b360634a4489c0c756364c0c3a2992906752165ecb50544c251312"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:0248f86b3ea061e67817c47ecbe82c23f9dd5d5226200eb9090b3873d3ca32de"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9882a7451c680c12f232a422730f986a1fcd808da0fd428f08b671237237d651"}, + {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1c3ac5423c8c1da5928aa12c6e258921956757d976405e9467c5f39d1d577a4b"}, + {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:806abdd8249ba3953c33742506fe414880bad78ac25cc9a9b1c6ae97bedd573f"}, + {file = "Pillow-10.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:eaed6977fa73408b7b8a24e8b14e59e1668cfc0f4c40193ea7ced8e210adf996"}, + {file = "Pillow-10.1.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:fe1e26e1ffc38be097f0ba1d0d07fcade2bcfd1d023cda5b29935ae8052bd793"}, + {file = "Pillow-10.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7a7e3daa202beb61821c06d2517428e8e7c1aab08943e92ec9e5755c2fc9ba5e"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24fadc71218ad2b8ffe437b54876c9382b4a29e030a05a9879f615091f42ffc2"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa1d323703cfdac2036af05191b969b910d8f115cf53093125e4058f62012c9a"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:912e3812a1dbbc834da2b32299b124b5ddcb664ed354916fd1ed6f193f0e2d01"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:7dbaa3c7de82ef37e7708521be41db5565004258ca76945ad74a8e998c30af8d"}, + {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9d7bc666bd8c5a4225e7ac71f2f9d12466ec555e89092728ea0f5c0c2422ea80"}, + {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:baada14941c83079bf84c037e2d8b7506ce201e92e3d2fa0d1303507a8538212"}, + {file = "Pillow-10.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:2ef6721c97894a7aa77723740a09547197533146fba8355e86d6d9a4a1056b14"}, + {file = "Pillow-10.1.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0a026c188be3b443916179f5d04548092e253beb0c3e2ee0a4e2cdad72f66099"}, + {file = "Pillow-10.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:04f6f6149f266a100374ca3cc368b67fb27c4af9f1cc8cb6306d849dcdf12616"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb40c011447712d2e19cc261c82655f75f32cb724788df315ed992a4d65696bb"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a8413794b4ad9719346cd9306118450b7b00d9a15846451549314a58ac42219"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:c9aeea7b63edb7884b031a35305629a7593272b54f429a9869a4f63a1bf04c34"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b4005fee46ed9be0b8fb42be0c20e79411533d1fd58edabebc0dd24626882cfd"}, + {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4d0152565c6aa6ebbfb1e5d8624140a440f2b99bf7afaafbdbf6430426497f28"}, + {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d921bc90b1defa55c9917ca6b6b71430e4286fc9e44c55ead78ca1a9f9eba5f2"}, + {file = "Pillow-10.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:cfe96560c6ce2f4c07d6647af2d0f3c54cc33289894ebd88cfbb3bcd5391e256"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:937bdc5a7f5343d1c97dc98149a0be7eb9704e937fe3dc7140e229ae4fc572a7"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1c25762197144e211efb5f4e8ad656f36c8d214d390585d1d21281f46d556ba"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:afc8eef765d948543a4775f00b7b8c079b3321d6b675dde0d02afa2ee23000b4"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:883f216eac8712b83a63f41b76ddfb7b2afab1b74abbb413c5df6680f071a6b9"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b920e4d028f6442bea9a75b7491c063f0b9a3972520731ed26c83e254302eb1e"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c41d960babf951e01a49c9746f92c5a7e0d939d1652d7ba30f6b3090f27e412"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1fafabe50a6977ac70dfe829b2d5735fd54e190ab55259ec8aea4aaea412fa0b"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:3b834f4b16173e5b92ab6566f0473bfb09f939ba14b23b8da1f54fa63e4b623f"}, + {file = "Pillow-10.1.0.tar.gz", hash = "sha256:e6bf8de6c36ed96c86ea3b6e1d5273c53f46ef518a062464cd7ef5dd2cf92e38"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "sphinxext-opengraph"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "pinecone-client" +version = "2.2.4" +description = "Pinecone client and SDK" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pinecone-client-2.2.4.tar.gz", hash = "sha256:2c1cc1d6648b2be66e944db2ffa59166a37b9164d1135ad525d9cd8b1e298168"}, + {file = "pinecone_client-2.2.4-py3-none-any.whl", hash = "sha256:5bf496c01c2f82f4e5c2dc977cc5062ecd7168b8ed90743b09afcc8c7eb242ec"}, +] + +[package.dependencies] +dnspython = ">=2.0.0" +loguru = ">=0.5.0" +numpy = ">=1.22.0" +python-dateutil = ">=2.5.3" +pyyaml = ">=5.4" +requests = ">=2.19.0" +tqdm = ">=4.64.1" +typing-extensions = ">=3.7.4" +urllib3 = ">=1.21.1" + +[package.extras] +grpc = ["googleapis-common-protos (>=1.53.0)", "grpc-gateway-protoc-gen-openapiv2 (==0.1.0)", "grpcio (>=1.44.0)", "lz4 (>=3.1.3)", "protobuf (>=3.20.0,<3.21.0)"] + +[[package]] +name = "platformdirs" +version = "3.11.0" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +optional = false +python-versions = ">=3.7" +files = [ + {file = "platformdirs-3.11.0-py3-none-any.whl", hash = "sha256:e9d171d00af68be50e9202731309c4e658fd8bc76f55c11c7dd760d023bda68e"}, + {file = "platformdirs-3.11.0.tar.gz", hash = "sha256:cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3"}, +] + +[package.extras] +docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.1)", "sphinx-autodoc-typehints (>=1.24)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)"] + +[[package]] +name = "polars" +version = "0.16.18" +description = "Blazingly fast DataFrame library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "polars-0.16.18-cp37-abi3-macosx_10_7_x86_64.whl", hash = "sha256:ee471d3f79daf93e7b0a5412a25473fdc27b59caa05d3baeb786e2022f0e16b0"}, + {file = "polars-0.16.18-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:bee894337be02706056e17248a361d8b2aeb59971ddc04d0a2be2df568977846"}, + {file = "polars-0.16.18-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:674645118122c0ddd93668735d736a080290f5d2de1ea9a751f3639a331a4784"}, + {file = "polars-0.16.18-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed6d2b07a43baf1563a68beb88b9a561f41967815fd57c9682aaac4502ee4499"}, + {file = "polars-0.16.18-cp37-abi3-win_amd64.whl", hash = "sha256:eaeba3902d6a412eb2986c2477387cc400f1502abd22cf79b2cc32b435d8abe4"}, + {file = "polars-0.16.18.tar.gz", hash = "sha256:221125b1e1d043d13d889c336ba1f592ed8f150ec06124067e72e40600b3c96a"}, +] + +[package.dependencies] +typing_extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} + +[package.extras] +all = ["polars[connectorx,deltalake,fsspec,matplotlib,numpy,pandas,pyarrow,sqlalchemy,timezone,xlsx2csv,xlsxwriter]"] +connectorx = ["connectorx"] +deltalake = ["deltalake (>=0.8.0)"] +fsspec = ["fsspec"] +matplotlib = ["matplotlib"] +numpy = ["numpy (>=1.16.0)"] +pandas = ["pandas", "pyarrow (>=4.0.0)"] +pyarrow = ["pyarrow (>=4.0.0)"] +sqlalchemy = ["pandas", "sqlalchemy"] +timezone = ["backports.zoneinfo", "tzdata"] +xlsx2csv = ["xlsx2csv (>=0.8.0)"] +xlsxwriter = ["xlsxwriter"] + +[[package]] +name = "posthog" +version = "3.0.2" +description = "Integrate PostHog into any python application." +optional = false +python-versions = "*" +files = [ + {file = "posthog-3.0.2-py2.py3-none-any.whl", hash = "sha256:a8c0af6f2401fbe50f90e68c4143d0824b54e872de036b1c2f23b5abb39d88ce"}, + {file = "posthog-3.0.2.tar.gz", hash = "sha256:701fba6e446a4de687c6e861b587e7b7741955ad624bf34fe013c06a0fec6fb3"}, +] + +[package.dependencies] +backoff = ">=1.10.0" +monotonic = ">=1.5" +python-dateutil = ">2.1" +requests = ">=2.7,<3.0" +six = ">=1.5" + +[package.extras] +dev = ["black", "flake8", "flake8-print", "isort", "pre-commit"] +sentry = ["django", "sentry-sdk"] +test = ["coverage", "flake8", "freezegun (==0.3.15)", "mock (>=2.0.0)", "pylint", "pytest"] + +[[package]] +name = "prisma" +version = "0.10.0" +description = "Prisma Client Python is an auto-generated and fully type-safe database client" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "prisma-0.10.0-py3-none-any.whl", hash = "sha256:ca223f33d4014e5b5eba8806d66a77d4eef56fcafea69d046df88888696b4bcd"}, + {file = "prisma-0.10.0.tar.gz", hash = "sha256:ff1b9eea00925bc37f3eb379431f224945665a3cce4c48753f8feebc28f00116"}, +] + +[package.dependencies] +click = ">=7.1.2" +httpx = ">=0.19.0" +jinja2 = ">=2.11.2" +nodeenv = "*" +pydantic = ">=1.8.0,<3" +python-dotenv = ">=0.12.0" +tomlkit = "*" +typing-extensions = ">=4.0.1" + +[package.extras] +all = ["nodejs-bin"] +node = ["nodejs-bin"] + +[[package]] +name = "prompthub-py" +version = "4.0.0" +description = "" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "prompthub_py-4.0.0-py3-none-any.whl", hash = "sha256:45923abea2ff0770d0ade8e79064886cdeffe3e3ac7b4d82b505b12e896991a1"}, + {file = "prompthub_py-4.0.0.tar.gz", hash = "sha256:d2d145213c86712d1951b840e77b8193b9605de77eb5119ce737ba66a058ca29"}, +] + +[package.dependencies] +pyyaml = ">=6.0,<7.0" +requests = ">=2.28.2,<3.0.0" + +[[package]] +name = "protobuf" +version = "4.24.4" +description = "" +optional = false +python-versions = ">=3.7" +files = [ + {file = "protobuf-4.24.4-cp310-abi3-win32.whl", hash = "sha256:ec9912d5cb6714a5710e28e592ee1093d68c5ebfeda61983b3f40331da0b1ebb"}, + {file = "protobuf-4.24.4-cp310-abi3-win_amd64.whl", hash = "sha256:1badab72aa8a3a2b812eacfede5020472e16c6b2212d737cefd685884c191085"}, + {file = "protobuf-4.24.4-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:8e61a27f362369c2f33248a0ff6896c20dcd47b5d48239cb9720134bef6082e4"}, + {file = "protobuf-4.24.4-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:bffa46ad9612e6779d0e51ae586fde768339b791a50610d85eb162daeb23661e"}, + {file = "protobuf-4.24.4-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:b493cb590960ff863743b9ff1452c413c2ee12b782f48beca77c8da3e2ffe9d9"}, + {file = "protobuf-4.24.4-cp37-cp37m-win32.whl", hash = "sha256:dbbed8a56e56cee8d9d522ce844a1379a72a70f453bde6243e3c86c30c2a3d46"}, + {file = "protobuf-4.24.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6b7d2e1c753715dcfe9d284a25a52d67818dd43c4932574307daf836f0071e37"}, + {file = "protobuf-4.24.4-cp38-cp38-win32.whl", hash = "sha256:02212557a76cd99574775a81fefeba8738d0f668d6abd0c6b1d3adcc75503dbe"}, + {file = "protobuf-4.24.4-cp38-cp38-win_amd64.whl", hash = "sha256:2fa3886dfaae6b4c5ed2730d3bf47c7a38a72b3a1f0acb4d4caf68e6874b947b"}, + {file = "protobuf-4.24.4-cp39-cp39-win32.whl", hash = "sha256:b77272f3e28bb416e2071186cb39efd4abbf696d682cbb5dc731308ad37fa6dd"}, + {file = "protobuf-4.24.4-cp39-cp39-win_amd64.whl", hash = "sha256:9fee5e8aa20ef1b84123bb9232b3f4a5114d9897ed89b4b8142d81924e05d79b"}, + {file = "protobuf-4.24.4-py3-none-any.whl", hash = "sha256:80797ce7424f8c8d2f2547e2d42bfbb6c08230ce5832d6c099a37335c9c90a92"}, + {file = "protobuf-4.24.4.tar.gz", hash = "sha256:5a70731910cd9104762161719c3d883c960151eea077134458503723b60e3667"}, +] + +[[package]] +name = "pyarrow" +version = "11.0.0" +description = "Python library for Apache Arrow" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pyarrow-11.0.0-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:40bb42afa1053c35c749befbe72f6429b7b5f45710e85059cdd534553ebcf4f2"}, + {file = "pyarrow-11.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7c28b5f248e08dea3b3e0c828b91945f431f4202f1a9fe84d1012a761324e1ba"}, + {file = "pyarrow-11.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a37bc81f6c9435da3c9c1e767324ac3064ffbe110c4e460660c43e144be4ed85"}, + {file = "pyarrow-11.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad7c53def8dbbc810282ad308cc46a523ec81e653e60a91c609c2233ae407689"}, + {file = "pyarrow-11.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:25aa11c443b934078bfd60ed63e4e2d42461682b5ac10f67275ea21e60e6042c"}, + {file = "pyarrow-11.0.0-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:e217d001e6389b20a6759392a5ec49d670757af80101ee6b5f2c8ff0172e02ca"}, + {file = "pyarrow-11.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ad42bb24fc44c48f74f0d8c72a9af16ba9a01a2ccda5739a517aa860fa7e3d56"}, + {file = "pyarrow-11.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d942c690ff24a08b07cb3df818f542a90e4d359381fbff71b8f2aea5bf58841"}, + {file = "pyarrow-11.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f010ce497ca1b0f17a8243df3048055c0d18dcadbcc70895d5baf8921f753de5"}, + {file = "pyarrow-11.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:2f51dc7ca940fdf17893227edb46b6784d37522ce08d21afc56466898cb213b2"}, + {file = "pyarrow-11.0.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:1cbcfcbb0e74b4d94f0b7dde447b835a01bc1d16510edb8bb7d6224b9bf5bafc"}, + {file = "pyarrow-11.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aaee8f79d2a120bf3e032d6d64ad20b3af6f56241b0ffc38d201aebfee879d00"}, + {file = "pyarrow-11.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:410624da0708c37e6a27eba321a72f29d277091c8f8d23f72c92bada4092eb5e"}, + {file = "pyarrow-11.0.0-cp37-cp37m-win_amd64.whl", hash = "sha256:2d53ba72917fdb71e3584ffc23ee4fcc487218f8ff29dd6df3a34c5c48fe8c06"}, + {file = "pyarrow-11.0.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:f12932e5a6feb5c58192209af1d2607d488cb1d404fbc038ac12ada60327fa34"}, + {file = "pyarrow-11.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:41a1451dd895c0b2964b83d91019e46f15b5564c7ecd5dcb812dadd3f05acc97"}, + {file = "pyarrow-11.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:becc2344be80e5dce4e1b80b7c650d2fc2061b9eb339045035a1baa34d5b8f1c"}, + {file = "pyarrow-11.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f40be0d7381112a398b93c45a7e69f60261e7b0269cc324e9f739ce272f4f70"}, + {file = "pyarrow-11.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:362a7c881b32dc6b0eccf83411a97acba2774c10edcec715ccaab5ebf3bb0835"}, + {file = "pyarrow-11.0.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:ccbf29a0dadfcdd97632b4f7cca20a966bb552853ba254e874c66934931b9841"}, + {file = "pyarrow-11.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3e99be85973592051e46412accea31828da324531a060bd4585046a74ba45854"}, + {file = "pyarrow-11.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69309be84dcc36422574d19c7d3a30a7ea43804f12552356d1ab2a82a713c418"}, + {file = "pyarrow-11.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da93340fbf6f4e2a62815064383605b7ffa3e9eeb320ec839995b1660d69f89b"}, + {file = "pyarrow-11.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:caad867121f182d0d3e1a0d36f197df604655d0b466f1bc9bafa903aa95083e4"}, + {file = "pyarrow-11.0.0.tar.gz", hash = "sha256:5461c57dbdb211a632a48facb9b39bbeb8a7905ec95d768078525283caef5f6d"}, +] + +[package.dependencies] +numpy = ">=1.16.6" + +[[package]] +name = "pydantic" +version = "1.10.13" +description = "Data validation and settings management using python type hints" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pydantic-1.10.13-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:efff03cc7a4f29d9009d1c96ceb1e7a70a65cfe86e89d34e4a5f2ab1e5693737"}, + {file = "pydantic-1.10.13-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3ecea2b9d80e5333303eeb77e180b90e95eea8f765d08c3d278cd56b00345d01"}, + {file = "pydantic-1.10.13-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1740068fd8e2ef6eb27a20e5651df000978edce6da6803c2bef0bc74540f9548"}, + {file = "pydantic-1.10.13-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84bafe2e60b5e78bc64a2941b4c071a4b7404c5c907f5f5a99b0139781e69ed8"}, + {file = "pydantic-1.10.13-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:bc0898c12f8e9c97f6cd44c0ed70d55749eaf783716896960b4ecce2edfd2d69"}, + {file = "pydantic-1.10.13-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:654db58ae399fe6434e55325a2c3e959836bd17a6f6a0b6ca8107ea0571d2e17"}, + {file = "pydantic-1.10.13-cp310-cp310-win_amd64.whl", hash = "sha256:75ac15385a3534d887a99c713aa3da88a30fbd6204a5cd0dc4dab3d770b9bd2f"}, + {file = "pydantic-1.10.13-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c553f6a156deb868ba38a23cf0df886c63492e9257f60a79c0fd8e7173537653"}, + {file = "pydantic-1.10.13-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5e08865bc6464df8c7d61439ef4439829e3ab62ab1669cddea8dd00cd74b9ffe"}, + {file = "pydantic-1.10.13-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e31647d85a2013d926ce60b84f9dd5300d44535a9941fe825dc349ae1f760df9"}, + {file = "pydantic-1.10.13-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:210ce042e8f6f7c01168b2d84d4c9eb2b009fe7bf572c2266e235edf14bacd80"}, + {file = "pydantic-1.10.13-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8ae5dd6b721459bfa30805f4c25880e0dd78fc5b5879f9f7a692196ddcb5a580"}, + {file = "pydantic-1.10.13-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f8e81fc5fb17dae698f52bdd1c4f18b6ca674d7068242b2aff075f588301bbb0"}, + {file = "pydantic-1.10.13-cp311-cp311-win_amd64.whl", hash = "sha256:61d9dce220447fb74f45e73d7ff3b530e25db30192ad8d425166d43c5deb6df0"}, + {file = "pydantic-1.10.13-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4b03e42ec20286f052490423682016fd80fda830d8e4119f8ab13ec7464c0132"}, + {file = "pydantic-1.10.13-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f59ef915cac80275245824e9d771ee939133be38215555e9dc90c6cb148aaeb5"}, + {file = "pydantic-1.10.13-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5a1f9f747851338933942db7af7b6ee8268568ef2ed86c4185c6ef4402e80ba8"}, + {file = "pydantic-1.10.13-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:97cce3ae7341f7620a0ba5ef6cf043975cd9d2b81f3aa5f4ea37928269bc1b87"}, + {file = "pydantic-1.10.13-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:854223752ba81e3abf663d685f105c64150873cc6f5d0c01d3e3220bcff7d36f"}, + {file = "pydantic-1.10.13-cp37-cp37m-win_amd64.whl", hash = "sha256:b97c1fac8c49be29486df85968682b0afa77e1b809aff74b83081cc115e52f33"}, + {file = "pydantic-1.10.13-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c958d053453a1c4b1c2062b05cd42d9d5c8eb67537b8d5a7e3c3032943ecd261"}, + {file = "pydantic-1.10.13-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4c5370a7edaac06daee3af1c8b1192e305bc102abcbf2a92374b5bc793818599"}, + {file = "pydantic-1.10.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d6f6e7305244bddb4414ba7094ce910560c907bdfa3501e9db1a7fd7eaea127"}, + {file = "pydantic-1.10.13-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3a3c792a58e1622667a2837512099eac62490cdfd63bd407993aaf200a4cf1f"}, + {file = "pydantic-1.10.13-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:c636925f38b8db208e09d344c7aa4f29a86bb9947495dd6b6d376ad10334fb78"}, + {file = "pydantic-1.10.13-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:678bcf5591b63cc917100dc50ab6caebe597ac67e8c9ccb75e698f66038ea953"}, + {file = "pydantic-1.10.13-cp38-cp38-win_amd64.whl", hash = "sha256:6cf25c1a65c27923a17b3da28a0bdb99f62ee04230c931d83e888012851f4e7f"}, + {file = "pydantic-1.10.13-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8ef467901d7a41fa0ca6db9ae3ec0021e3f657ce2c208e98cd511f3161c762c6"}, + {file = "pydantic-1.10.13-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:968ac42970f57b8344ee08837b62f6ee6f53c33f603547a55571c954a4225691"}, + {file = "pydantic-1.10.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9849f031cf8a2f0a928fe885e5a04b08006d6d41876b8bbd2fc68a18f9f2e3fd"}, + {file = "pydantic-1.10.13-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56e3ff861c3b9c6857579de282ce8baabf443f42ffba355bf070770ed63e11e1"}, + {file = "pydantic-1.10.13-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f00790179497767aae6bcdc36355792c79e7bbb20b145ff449700eb076c5f96"}, + {file = "pydantic-1.10.13-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:75b297827b59bc229cac1a23a2f7a4ac0031068e5be0ce385be1462e7e17a35d"}, + {file = "pydantic-1.10.13-cp39-cp39-win_amd64.whl", hash = "sha256:e70ca129d2053fb8b728ee7d1af8e553a928d7e301a311094b8a0501adc8763d"}, + {file = "pydantic-1.10.13-py3-none-any.whl", hash = "sha256:b87326822e71bd5f313e7d3bfdc77ac3247035ac10b0c0618bd99dcf95b1e687"}, + {file = "pydantic-1.10.13.tar.gz", hash = "sha256:32c8b48dcd3b2ac4e78b0ba4af3a2c2eb6048cb75202f0ea7b34feb740efc340"}, +] + +[package.dependencies] +typing-extensions = ">=4.2.0" + +[package.extras] +dotenv = ["python-dotenv (>=0.10.4)"] +email = ["email-validator (>=1.0.3)"] + +[[package]] +name = "pydozer" +version = "0.1.35" +description = "Python wrapper for the Dozer API" +optional = false +python-versions = "^3.9" +files = [] +develop = false + +[package.dependencies] +grpcio = "^1.51.3" +grpcio-reflection = "^1.51.3" +polars = "^0.16.10" +protobuf = "^4.22.0" +pyarrow = "^11.0.0" +tqdm = "^4.65.0" + +[package.source] +type = "git" +url = "git@github.com:getdozer/dozer-python.git" +reference = "main" +resolved_reference = "ebceb9188c08d3ad070a2c5fef6f66fede4e13fc" + +[[package]] +name = "pyjwt" +version = "2.8.0" +description = "JSON Web Token implementation in Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "PyJWT-2.8.0-py3-none-any.whl", hash = "sha256:59127c392cc44c2da5bb3192169a91f429924e17aff6534d70fdc02ab3e04320"}, + {file = "PyJWT-2.8.0.tar.gz", hash = "sha256:57e28d156e3d5c10088e0c68abb90bfac3df82b40a71bd0daa20c65ccd5c23de"}, +] + +[package.extras] +crypto = ["cryptography (>=3.4.0)"] +dev = ["coverage[toml] (==5.0.4)", "cryptography (>=3.4.0)", "pre-commit", "pytest (>=6.0.0,<7.0.0)", "sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"] +docs = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"] +tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-dotenv" +version = "1.0.0" +description = "Read key-value pairs from a .env file and set them as environment variables" +optional = false +python-versions = ">=3.8" +files = [ + {file = "python-dotenv-1.0.0.tar.gz", hash = "sha256:a8df96034aae6d2d50a4ebe8216326c61c3eb64836776504fcca410e5937a3ba"}, + {file = "python_dotenv-1.0.0-py3-none-any.whl", hash = "sha256:f5971a9226b701070a4bf2c38c89e5a3f0d64de8debda981d1db98583009122a"}, +] + +[package.extras] +cli = ["click (>=5.0)"] + +[[package]] +name = "python-engineio" +version = "4.8.0" +description = "Engine.IO server and client for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "python-engineio-4.8.0.tar.gz", hash = "sha256:2a32585d8fecd0118264fe0c39788670456ca9aa466d7c026d995cfff68af164"}, + {file = "python_engineio-4.8.0-py3-none-any.whl", hash = "sha256:6055ce35b7f32b70641d53846faf76e06f2af0107a714cedb2750595c69ade43"}, +] + +[package.dependencies] +simple-websocket = ">=0.10.0" + +[package.extras] +asyncio-client = ["aiohttp (>=3.4)"] +client = ["requests (>=2.21.0)", "websocket-client (>=0.54.0)"] +docs = ["sphinx"] + +[[package]] +name = "python-graphql-client" +version = "0.4.3" +description = "Python GraphQL Client" +optional = false +python-versions = "*" +files = [ + {file = "python_graphql_client-0.4.3-py3-none-any.whl", hash = "sha256:c5eb996702acf46110b352f61819c46065ea4f4f106158535cd471e66490b25e"}, + {file = "python_graphql_client-0.4.3.tar.gz", hash = "sha256:fdbd03115dde8776db02e60414b83b018d7d95e5752d6d5fabf21c99265f5b9d"}, +] + +[package.dependencies] +aiohttp = ">=3.0,<4.0" +requests = ">=2.0,<3.0" +websockets = ">=5.0" + +[package.extras] +dev = ["black", "flake8", "flake8-black", "flake8-docstrings", "flake8-isort", "gitchangelog", "pre-commit", "pystache"] + +[[package]] +name = "python-multipart" +version = "0.0.6" +description = "A streaming multipart parser for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "python_multipart-0.0.6-py3-none-any.whl", hash = "sha256:ee698bab5ef148b0a760751c261902cd096e57e10558e11aca17646b74ee1c18"}, + {file = "python_multipart-0.0.6.tar.gz", hash = "sha256:e9925a80bb668529f1b67c7fdb0a5dacdd7cbfc6fb0bff3ea443fe22bdd62132"}, +] + +[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 (==7.2.0)", "pytest-cov (==4.0.0)", "pytest-timeout (==2.1.0)", "pyyaml (==5.1)"] + +[[package]] +name = "python-socketio" +version = "5.10.0" +description = "Socket.IO server and client for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "python-socketio-5.10.0.tar.gz", hash = "sha256:01c616946fa9f67ed5cc3d1568e1c4940acfc64aeeb9ff621a53e80cabeb748a"}, + {file = "python_socketio-5.10.0-py3-none-any.whl", hash = "sha256:fb18d9b84cfb05289dc207b790c3de59cd242310d9b980b1c31e9faf4f79101a"}, +] + +[package.dependencies] +bidict = ">=0.21.0" +python-engineio = ">=4.8.0" + +[package.extras] +asyncio-client = ["aiohttp (>=3.4)"] +client = ["requests (>=2.21.0)", "websocket-client (>=0.54.0)"] +docs = ["sphinx"] + +[[package]] +name = "pytz" +version = "2023.3.post1" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, + {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, +] + +[[package]] +name = "pyyaml" +version = "6.0.1" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, + {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, + {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, + {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, + {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, + {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, + {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, + {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, + {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, + {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, + {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, + {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, + {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, +] + +[[package]] +name = "quantulum3" +version = "0.9.0" +description = "Extract quantities from unstructured text." +optional = false +python-versions = "*" +files = [ + {file = "quantulum3-0.9.0-py3-none-any.whl", hash = "sha256:5f1d00bfde35627a6660d24ead4806445e5f197ab022689b359830e2125525bb"}, + {file = "quantulum3-0.9.0.tar.gz", hash = "sha256:6624adf9462d70b4d633415db3da20bfcc72bc1c40c668fa7ff635b07198a14d"}, +] + +[package.dependencies] +inflect = "*" +num2words = "*" + +[package.extras] +classifier = ["joblib", "numpy", "scikit-learn", "scipy", "stemming", "wikipedia"] + +[[package]] +name = "rank-bm25" +version = "0.2.2" +description = "Various BM25 algorithms for document ranking" +optional = false +python-versions = "*" +files = [ + {file = "rank_bm25-0.2.2-py3-none-any.whl", hash = "sha256:7bd4a95571adadfc271746fa146a4bcfd89c0cf731e49c3d1ad863290adbe8ae"}, + {file = "rank_bm25-0.2.2.tar.gz", hash = "sha256:096ccef76f8188563419aaf384a02f0ea459503fdf77901378d4fd9d87e5e51d"}, +] + +[package.dependencies] +numpy = "*" + +[package.extras] +dev = ["pytest"] + +[[package]] +name = "referencing" +version = "0.30.2" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "referencing-0.30.2-py3-none-any.whl", hash = "sha256:449b6669b6121a9e96a7f9e410b245d471e8d48964c67113ce9afe50c8dd7bdf"}, + {file = "referencing-0.30.2.tar.gz", hash = "sha256:794ad8003c65938edcdbc027f1933215e0d0ccc0291e3ce20a4d87432b59efc0"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" + +[[package]] +name = "regex" +version = "2023.10.3" +description = "Alternative regular expression module, to replace re." +optional = false +python-versions = ">=3.7" +files = [ + {file = "regex-2023.10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4c34d4f73ea738223a094d8e0ffd6d2c1a1b4c175da34d6b0de3d8d69bee6bcc"}, + {file = "regex-2023.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a8f4e49fc3ce020f65411432183e6775f24e02dff617281094ba6ab079ef0915"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4cd1bccf99d3ef1ab6ba835308ad85be040e6a11b0977ef7ea8c8005f01a3c29"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:81dce2ddc9f6e8f543d94b05d56e70d03a0774d32f6cca53e978dc01e4fc75b8"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c6b4d23c04831e3ab61717a707a5d763b300213db49ca680edf8bf13ab5d91b"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c15ad0aee158a15e17e0495e1e18741573d04eb6da06d8b84af726cfc1ed02ee"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6239d4e2e0b52c8bd38c51b760cd870069f0bdf99700a62cd509d7a031749a55"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4a8bf76e3182797c6b1afa5b822d1d5802ff30284abe4599e1247be4fd6b03be"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d9c727bbcf0065cbb20f39d2b4f932f8fa1631c3e01fcedc979bd4f51fe051c5"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:3ccf2716add72f80714b9a63899b67fa711b654be3fcdd34fa391d2d274ce767"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:107ac60d1bfdc3edb53be75e2a52aff7481b92817cfdddd9b4519ccf0e54a6ff"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:00ba3c9818e33f1fa974693fb55d24cdc8ebafcb2e4207680669d8f8d7cca79a"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f0a47efb1dbef13af9c9a54a94a0b814902e547b7f21acb29434504d18f36e3a"}, + {file = "regex-2023.10.3-cp310-cp310-win32.whl", hash = "sha256:36362386b813fa6c9146da6149a001b7bd063dabc4d49522a1f7aa65b725c7ec"}, + {file = "regex-2023.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:c65a3b5330b54103e7d21cac3f6bf3900d46f6d50138d73343d9e5b2900b2353"}, + {file = "regex-2023.10.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:90a79bce019c442604662d17bf69df99090e24cdc6ad95b18b6725c2988a490e"}, + {file = "regex-2023.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c7964c2183c3e6cce3f497e3a9f49d182e969f2dc3aeeadfa18945ff7bdd7051"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ef80829117a8061f974b2fda8ec799717242353bff55f8a29411794d635d964"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5addc9d0209a9afca5fc070f93b726bf7003bd63a427f65ef797a931782e7edc"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c148bec483cc4b421562b4bcedb8e28a3b84fcc8f0aa4418e10898f3c2c0eb9b"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d1f21af4c1539051049796a0f50aa342f9a27cde57318f2fc41ed50b0dbc4ac"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0b9ac09853b2a3e0d0082104036579809679e7715671cfbf89d83c1cb2a30f58"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ebedc192abbc7fd13c5ee800e83a6df252bec691eb2c4bedc9f8b2e2903f5e2a"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d8a993c0a0ffd5f2d3bda23d0cd75e7086736f8f8268de8a82fbc4bd0ac6791e"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:be6b7b8d42d3090b6c80793524fa66c57ad7ee3fe9722b258aec6d0672543fd0"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4023e2efc35a30e66e938de5aef42b520c20e7eda7bb5fb12c35e5d09a4c43f6"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0d47840dc05e0ba04fe2e26f15126de7c755496d5a8aae4a08bda4dd8d646c54"}, + {file = "regex-2023.10.3-cp311-cp311-win32.whl", hash = "sha256:9145f092b5d1977ec8c0ab46e7b3381b2fd069957b9862a43bd383e5c01d18c2"}, + {file = "regex-2023.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:b6104f9a46bd8743e4f738afef69b153c4b8b592d35ae46db07fc28ae3d5fb7c"}, + {file = "regex-2023.10.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:bff507ae210371d4b1fe316d03433ac099f184d570a1a611e541923f78f05037"}, + {file = "regex-2023.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:be5e22bbb67924dea15039c3282fa4cc6cdfbe0cbbd1c0515f9223186fc2ec5f"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a992f702c9be9c72fa46f01ca6e18d131906a7180950958f766c2aa294d4b41"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7434a61b158be563c1362d9071358f8ab91b8d928728cd2882af060481244c9e"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c2169b2dcabf4e608416f7f9468737583ce5f0a6e8677c4efbf795ce81109d7c"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9e908ef5889cda4de038892b9accc36d33d72fb3e12c747e2799a0e806ec841"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:12bd4bc2c632742c7ce20db48e0d99afdc05e03f0b4c1af90542e05b809a03d9"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bc72c231f5449d86d6c7d9cc7cd819b6eb30134bb770b8cfdc0765e48ef9c420"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bce8814b076f0ce5766dc87d5a056b0e9437b8e0cd351b9a6c4e1134a7dfbda9"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:ba7cd6dc4d585ea544c1412019921570ebd8a597fabf475acc4528210d7c4a6f"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b0c7d2f698e83f15228ba41c135501cfe7d5740181d5903e250e47f617eb4292"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5a8f91c64f390ecee09ff793319f30a0f32492e99f5dc1c72bc361f23ccd0a9a"}, + {file = "regex-2023.10.3-cp312-cp312-win32.whl", hash = "sha256:ad08a69728ff3c79866d729b095872afe1e0557251da4abb2c5faff15a91d19a"}, + {file = "regex-2023.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:39cdf8d141d6d44e8d5a12a8569d5a227f645c87df4f92179bd06e2e2705e76b"}, + {file = "regex-2023.10.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4a3ee019a9befe84fa3e917a2dd378807e423d013377a884c1970a3c2792d293"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76066d7ff61ba6bf3cb5efe2428fc82aac91802844c022d849a1f0f53820502d"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bfe50b61bab1b1ec260fa7cd91106fa9fece57e6beba05630afe27c71259c59b"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fd88f373cb71e6b59b7fa597e47e518282455c2734fd4306a05ca219a1991b0"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b3ab05a182c7937fb374f7e946f04fb23a0c0699c0450e9fb02ef567412d2fa3"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dac37cf08fcf2094159922edc7a2784cfcc5c70f8354469f79ed085f0328ebdf"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e54ddd0bb8fb626aa1f9ba7b36629564544954fff9669b15da3610c22b9a0991"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3367007ad1951fde612bf65b0dffc8fd681a4ab98ac86957d16491400d661302"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:16f8740eb6dbacc7113e3097b0a36065a02e37b47c936b551805d40340fb9971"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:f4f2ca6df64cbdd27f27b34f35adb640b5d2d77264228554e68deda54456eb11"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:39807cbcbe406efca2a233884e169d056c35aa7e9f343d4e78665246a332f597"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:7eece6fbd3eae4a92d7c748ae825cbc1ee41a89bb1c3db05b5578ed3cfcfd7cb"}, + {file = "regex-2023.10.3-cp37-cp37m-win32.whl", hash = "sha256:ce615c92d90df8373d9e13acddd154152645c0dc060871abf6bd43809673d20a"}, + {file = "regex-2023.10.3-cp37-cp37m-win_amd64.whl", hash = "sha256:0f649fa32fe734c4abdfd4edbb8381c74abf5f34bc0b3271ce687b23729299ed"}, + {file = "regex-2023.10.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9b98b7681a9437262947f41c7fac567c7e1f6eddd94b0483596d320092004533"}, + {file = "regex-2023.10.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:91dc1d531f80c862441d7b66c4505cd6ea9d312f01fb2f4654f40c6fdf5cc37a"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82fcc1f1cc3ff1ab8a57ba619b149b907072e750815c5ba63e7aa2e1163384a4"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7979b834ec7a33aafae34a90aad9f914c41fd6eaa8474e66953f3f6f7cbd4368"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef71561f82a89af6cfcbee47f0fabfdb6e63788a9258e913955d89fdd96902ab"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd829712de97753367153ed84f2de752b86cd1f7a88b55a3a775eb52eafe8a94"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00e871d83a45eee2f8688d7e6849609c2ca2a04a6d48fba3dff4deef35d14f07"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:706e7b739fdd17cb89e1fbf712d9dc21311fc2333f6d435eac2d4ee81985098c"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cc3f1c053b73f20c7ad88b0d1d23be7e7b3901229ce89f5000a8399746a6e039"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6f85739e80d13644b981a88f529d79c5bdf646b460ba190bffcaf6d57b2a9863"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:741ba2f511cc9626b7561a440f87d658aabb3d6b744a86a3c025f866b4d19e7f"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:e77c90ab5997e85901da85131fd36acd0ed2221368199b65f0d11bca44549711"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:979c24cbefaf2420c4e377ecd1f165ea08cc3d1fbb44bdc51bccbbf7c66a2cb4"}, + {file = "regex-2023.10.3-cp38-cp38-win32.whl", hash = "sha256:58837f9d221744d4c92d2cf7201c6acd19623b50c643b56992cbd2b745485d3d"}, + {file = "regex-2023.10.3-cp38-cp38-win_amd64.whl", hash = "sha256:c55853684fe08d4897c37dfc5faeff70607a5f1806c8be148f1695be4a63414b"}, + {file = "regex-2023.10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2c54e23836650bdf2c18222c87f6f840d4943944146ca479858404fedeb9f9af"}, + {file = "regex-2023.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:69c0771ca5653c7d4b65203cbfc5e66db9375f1078689459fe196fe08b7b4930"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ac965a998e1388e6ff2e9781f499ad1eaa41e962a40d11c7823c9952c77123e"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c0e8fae5b27caa34177bdfa5a960c46ff2f78ee2d45c6db15ae3f64ecadde14"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c56c3d47da04f921b73ff9415fbaa939f684d47293f071aa9cbb13c94afc17d"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ef1e014eed78ab650bef9a6a9cbe50b052c0aebe553fb2881e0453717573f52"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d29338556a59423d9ff7b6eb0cb89ead2b0875e08fe522f3e068b955c3e7b59b"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9c6d0ced3c06d0f183b73d3c5920727268d2201aa0fe6d55c60d68c792ff3588"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:994645a46c6a740ee8ce8df7911d4aee458d9b1bc5639bc968226763d07f00fa"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:66e2fe786ef28da2b28e222c89502b2af984858091675044d93cb50e6f46d7af"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:11175910f62b2b8c055f2b089e0fedd694fe2be3941b3e2633653bc51064c528"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:06e9abc0e4c9ab4779c74ad99c3fc10d3967d03114449acc2c2762ad4472b8ca"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:fb02e4257376ae25c6dd95a5aec377f9b18c09be6ebdefa7ad209b9137b73d48"}, + {file = "regex-2023.10.3-cp39-cp39-win32.whl", hash = "sha256:3b2c3502603fab52d7619b882c25a6850b766ebd1b18de3df23b2f939360e1bd"}, + {file = "regex-2023.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:adbccd17dcaff65704c856bd29951c58a1bd4b2b0f8ad6b826dbd543fe740988"}, + {file = "regex-2023.10.3.tar.gz", hash = "sha256:3fef4f844d2290ee0ba57addcec17eec9e3df73f10a2748485dfd6a3a188cc0f"}, +] + +[[package]] +name = "requests" +version = "2.31.0" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.7" +files = [ + {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, + {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "requests-cache" +version = "0.9.8" +description = "A transparent persistent cache for the requests library" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "requests_cache-0.9.8-py3-none-any.whl", hash = "sha256:3a16021a4b5014b5b32af9c34f07cb911e99a69074d664dfd4fddb62a2997c21"}, + {file = "requests_cache-0.9.8.tar.gz", hash = "sha256:eaed4eb5fd5c392ba5e7cfa000d4ab96b1d32c1a1620f37aa558c43741ac362b"}, +] + +[package.dependencies] +appdirs = ">=1.4.4" +attrs = ">=21.2" +cattrs = ">=22.2" +requests = ">=2.22" +url-normalize = ">=1.4" +urllib3 = ">=1.25.5" + +[package.extras] +all = ["boto3 (>=1.15)", "botocore (>=1.18)", "itsdangerous (>=2.0)", "pymongo (>=3)", "pyyaml (>=5.4)", "redis (>=3)", "ujson (>=4.0)"] +bson = ["bson (>=0.5)"] +docs = ["furo (>=2021.9.8)", "linkify-it-py (>=1.0.1,<2.0.0)", "myst-parser (>=0.15.1,<0.16.0)", "sphinx (==4.3.0)", "sphinx-autodoc-typehints (>=1.11,<2.0)", "sphinx-automodapi (>=0.13,<0.15)", "sphinx-copybutton (>=0.3,<0.5)", "sphinx-inline-tabs (>=2022.1.2b11)", "sphinx-notfound-page (>=0.8)", "sphinx-panels (>=0.6,<0.7)", "sphinxcontrib-apidoc (>=0.3,<0.4)"] +dynamodb = ["boto3 (>=1.15)", "botocore (>=1.18)"] +json = ["ujson (>=4.0)"] +mongodb = ["pymongo (>=3)"] +redis = ["redis (>=3)"] +security = ["itsdangerous (>=2.0)"] +yaml = ["pyyaml (>=5.4)"] + +[[package]] +name = "rpds-py" +version = "0.10.6" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "rpds_py-0.10.6-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:6bdc11f9623870d75692cc33c59804b5a18d7b8a4b79ef0b00b773a27397d1f6"}, + {file = "rpds_py-0.10.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:26857f0f44f0e791f4a266595a7a09d21f6b589580ee0585f330aaccccb836e3"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7f5e15c953ace2e8dde9824bdab4bec50adb91a5663df08d7d994240ae6fa31"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:61fa268da6e2e1cd350739bb61011121fa550aa2545762e3dc02ea177ee4de35"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c48f3fbc3e92c7dd6681a258d22f23adc2eb183c8cb1557d2fcc5a024e80b094"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0503c5b681566e8b722fe8c4c47cce5c7a51f6935d5c7012c4aefe952a35eed"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:734c41f9f57cc28658d98270d3436dba65bed0cfc730d115b290e970150c540d"}, + {file = "rpds_py-0.10.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a5d7ed104d158c0042a6a73799cf0eb576dfd5fc1ace9c47996e52320c37cb7c"}, + {file = "rpds_py-0.10.6-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e3df0bc35e746cce42579826b89579d13fd27c3d5319a6afca9893a9b784ff1b"}, + {file = "rpds_py-0.10.6-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:73e0a78a9b843b8c2128028864901f55190401ba38aae685350cf69b98d9f7c9"}, + {file = "rpds_py-0.10.6-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:5ed505ec6305abd2c2c9586a7b04fbd4baf42d4d684a9c12ec6110deefe2a063"}, + {file = "rpds_py-0.10.6-cp310-none-win32.whl", hash = "sha256:d97dd44683802000277bbf142fd9f6b271746b4846d0acaf0cefa6b2eaf2a7ad"}, + {file = "rpds_py-0.10.6-cp310-none-win_amd64.whl", hash = "sha256:b455492cab07107bfe8711e20cd920cc96003e0da3c1f91297235b1603d2aca7"}, + {file = "rpds_py-0.10.6-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:e8cdd52744f680346ff8c1ecdad5f4d11117e1724d4f4e1874f3a67598821069"}, + {file = "rpds_py-0.10.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:66414dafe4326bca200e165c2e789976cab2587ec71beb80f59f4796b786a238"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc435d059f926fdc5b05822b1be4ff2a3a040f3ae0a7bbbe672babb468944722"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8e7f2219cb72474571974d29a191714d822e58be1eb171f229732bc6fdedf0ac"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3953c6926a63f8ea5514644b7afb42659b505ece4183fdaaa8f61d978754349e"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2bb2e4826be25e72013916eecd3d30f66fd076110de09f0e750163b416500721"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bf347b495b197992efc81a7408e9a83b931b2f056728529956a4d0858608b80"}, + {file = "rpds_py-0.10.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:102eac53bb0bf0f9a275b438e6cf6904904908562a1463a6fc3323cf47d7a532"}, + {file = "rpds_py-0.10.6-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:40f93086eef235623aa14dbddef1b9fb4b22b99454cb39a8d2e04c994fb9868c"}, + {file = "rpds_py-0.10.6-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e22260a4741a0e7a206e175232867b48a16e0401ef5bce3c67ca5b9705879066"}, + {file = "rpds_py-0.10.6-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f4e56860a5af16a0fcfa070a0a20c42fbb2012eed1eb5ceeddcc7f8079214281"}, + {file = "rpds_py-0.10.6-cp311-none-win32.whl", hash = "sha256:0774a46b38e70fdde0c6ded8d6d73115a7c39d7839a164cc833f170bbf539116"}, + {file = "rpds_py-0.10.6-cp311-none-win_amd64.whl", hash = "sha256:4a5ee600477b918ab345209eddafde9f91c0acd931f3776369585a1c55b04c57"}, + {file = "rpds_py-0.10.6-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:5ee97c683eaface61d38ec9a489e353d36444cdebb128a27fe486a291647aff6"}, + {file = "rpds_py-0.10.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0713631d6e2d6c316c2f7b9320a34f44abb644fc487b77161d1724d883662e31"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5a53f5998b4bbff1cb2e967e66ab2addc67326a274567697379dd1e326bded7"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6a555ae3d2e61118a9d3e549737bb4a56ff0cec88a22bd1dfcad5b4e04759175"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:945eb4b6bb8144909b203a88a35e0a03d22b57aefb06c9b26c6e16d72e5eb0f0"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:52c215eb46307c25f9fd2771cac8135d14b11a92ae48d17968eda5aa9aaf5071"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1b3cd23d905589cb205710b3988fc8f46d4a198cf12862887b09d7aaa6bf9b9"}, + {file = "rpds_py-0.10.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:64ccc28683666672d7c166ed465c09cee36e306c156e787acef3c0c62f90da5a"}, + {file = "rpds_py-0.10.6-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:516a611a2de12fbea70c78271e558f725c660ce38e0006f75139ba337d56b1f6"}, + {file = "rpds_py-0.10.6-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:9ff93d3aedef11f9c4540cf347f8bb135dd9323a2fc705633d83210d464c579d"}, + {file = "rpds_py-0.10.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:d858532212f0650be12b6042ff4378dc2efbb7792a286bee4489eaa7ba010586"}, + {file = "rpds_py-0.10.6-cp312-none-win32.whl", hash = "sha256:3c4eff26eddac49d52697a98ea01b0246e44ca82ab09354e94aae8823e8bda02"}, + {file = "rpds_py-0.10.6-cp312-none-win_amd64.whl", hash = "sha256:150eec465dbc9cbca943c8e557a21afdcf9bab8aaabf386c44b794c2f94143d2"}, + {file = "rpds_py-0.10.6-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:cf693eb4a08eccc1a1b636e4392322582db2a47470d52e824b25eca7a3977b53"}, + {file = "rpds_py-0.10.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4134aa2342f9b2ab6c33d5c172e40f9ef802c61bb9ca30d21782f6e035ed0043"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e782379c2028a3611285a795b89b99a52722946d19fc06f002f8b53e3ea26ea9"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f6da6d842195fddc1cd34c3da8a40f6e99e4a113918faa5e60bf132f917c247"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b4a9fe992887ac68256c930a2011255bae0bf5ec837475bc6f7edd7c8dfa254e"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b788276a3c114e9f51e257f2a6f544c32c02dab4aa7a5816b96444e3f9ffc336"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:caa1afc70a02645809c744eefb7d6ee8fef7e2fad170ffdeacca267fd2674f13"}, + {file = "rpds_py-0.10.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bddd4f91eede9ca5275e70479ed3656e76c8cdaaa1b354e544cbcf94c6fc8ac4"}, + {file = "rpds_py-0.10.6-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:775049dfa63fb58293990fc59473e659fcafd953bba1d00fc5f0631a8fd61977"}, + {file = "rpds_py-0.10.6-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:c6c45a2d2b68c51fe3d9352733fe048291e483376c94f7723458cfd7b473136b"}, + {file = "rpds_py-0.10.6-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0699ab6b8c98df998c3eacf51a3b25864ca93dab157abe358af46dc95ecd9801"}, + {file = "rpds_py-0.10.6-cp38-none-win32.whl", hash = "sha256:ebdab79f42c5961682654b851f3f0fc68e6cc7cd8727c2ac4ffff955154123c1"}, + {file = "rpds_py-0.10.6-cp38-none-win_amd64.whl", hash = "sha256:24656dc36f866c33856baa3ab309da0b6a60f37d25d14be916bd3e79d9f3afcf"}, + {file = "rpds_py-0.10.6-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:0898173249141ee99ffcd45e3829abe7bcee47d941af7434ccbf97717df020e5"}, + {file = "rpds_py-0.10.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9e9184fa6c52a74a5521e3e87badbf9692549c0fcced47443585876fcc47e469"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5752b761902cd15073a527b51de76bbae63d938dc7c5c4ad1e7d8df10e765138"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:99a57006b4ec39dbfb3ed67e5b27192792ffb0553206a107e4aadb39c5004cd5"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09586f51a215d17efdb3a5f090d7cbf1633b7f3708f60a044757a5d48a83b393"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e225a6a14ecf44499aadea165299092ab0cba918bb9ccd9304eab1138844490b"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2039f8d545f20c4e52713eea51a275e62153ee96c8035a32b2abb772b6fc9e5"}, + {file = "rpds_py-0.10.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:34ad87a831940521d462ac11f1774edf867c34172010f5390b2f06b85dcc6014"}, + {file = "rpds_py-0.10.6-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:dcdc88b6b01015da066da3fb76545e8bb9a6880a5ebf89e0f0b2e3ca557b3ab7"}, + {file = "rpds_py-0.10.6-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:25860ed5c4e7f5e10c496ea78af46ae8d8468e0be745bd233bab9ca99bfd2647"}, + {file = "rpds_py-0.10.6-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7854a207ef77319ec457c1eb79c361b48807d252d94348305db4f4b62f40f7f3"}, + {file = "rpds_py-0.10.6-cp39-none-win32.whl", hash = "sha256:e6fcc026a3f27c1282c7ed24b7fcac82cdd70a0e84cc848c0841a3ab1e3dea2d"}, + {file = "rpds_py-0.10.6-cp39-none-win_amd64.whl", hash = "sha256:e98c4c07ee4c4b3acf787e91b27688409d918212dfd34c872201273fdd5a0e18"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:68fe9199184c18d997d2e4293b34327c0009a78599ce703e15cd9a0f47349bba"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:3339eca941568ed52d9ad0f1b8eb9fe0958fa245381747cecf2e9a78a5539c42"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a360cfd0881d36c6dc271992ce1eda65dba5e9368575663de993eeb4523d895f"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:031f76fc87644a234883b51145e43985aa2d0c19b063e91d44379cd2786144f8"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f36a9d751f86455dc5278517e8b65580eeee37d61606183897f122c9e51cef3"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:052a832078943d2b2627aea0d19381f607fe331cc0eb5df01991268253af8417"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:023574366002bf1bd751ebaf3e580aef4a468b3d3c216d2f3f7e16fdabd885ed"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:defa2c0c68734f4a82028c26bcc85e6b92cced99866af118cd6a89b734ad8e0d"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:879fb24304ead6b62dbe5034e7b644b71def53c70e19363f3c3be2705c17a3b4"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:53c43e10d398e365da2d4cc0bcaf0854b79b4c50ee9689652cdc72948e86f487"}, + {file = "rpds_py-0.10.6-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:3777cc9dea0e6c464e4b24760664bd8831738cc582c1d8aacf1c3f546bef3f65"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:40578a6469e5d1df71b006936ce95804edb5df47b520c69cf5af264d462f2cbb"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:cf71343646756a072b85f228d35b1d7407da1669a3de3cf47f8bbafe0c8183a4"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10f32b53f424fc75ff7b713b2edb286fdbfc94bf16317890260a81c2c00385dc"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:81de24a1c51cfb32e1fbf018ab0bdbc79c04c035986526f76c33e3f9e0f3356c"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac17044876e64a8ea20ab132080ddc73b895b4abe9976e263b0e30ee5be7b9c2"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5e8a78bd4879bff82daef48c14d5d4057f6856149094848c3ed0ecaf49f5aec2"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78ca33811e1d95cac8c2e49cb86c0fb71f4d8409d8cbea0cb495b6dbddb30a55"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c63c3ef43f0b3fb00571cff6c3967cc261c0ebd14a0a134a12e83bdb8f49f21f"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:7fde6d0e00b2fd0dbbb40c0eeec463ef147819f23725eda58105ba9ca48744f4"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:79edd779cfc46b2e15b0830eecd8b4b93f1a96649bcb502453df471a54ce7977"}, + {file = "rpds_py-0.10.6-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9164ec8010327ab9af931d7ccd12ab8d8b5dc2f4c6a16cbdd9d087861eaaefa1"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:d29ddefeab1791e3c751e0189d5f4b3dbc0bbe033b06e9c333dca1f99e1d523e"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:30adb75ecd7c2a52f5e76af50644b3e0b5ba036321c390b8e7ec1bb2a16dd43c"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd609fafdcdde6e67a139898196698af37438b035b25ad63704fd9097d9a3482"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6eef672de005736a6efd565577101277db6057f65640a813de6c2707dc69f396"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6cf4393c7b41abbf07c88eb83e8af5013606b1cdb7f6bc96b1b3536b53a574b8"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ad857f42831e5b8d41a32437f88d86ead6c191455a3499c4b6d15e007936d4cf"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d7360573f1e046cb3b0dceeb8864025aa78d98be4bb69f067ec1c40a9e2d9df"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d08f63561c8a695afec4975fae445245386d645e3e446e6f260e81663bfd2e38"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:f0f17f2ce0f3529177a5fff5525204fad7b43dd437d017dd0317f2746773443d"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:442626328600bde1d09dc3bb00434f5374948838ce75c41a52152615689f9403"}, + {file = "rpds_py-0.10.6-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:e9616f5bd2595f7f4a04b67039d890348ab826e943a9bfdbe4938d0eba606971"}, + {file = "rpds_py-0.10.6.tar.gz", hash = "sha256:4ce5a708d65a8dbf3748d2474b580d606b1b9f91b5c6ab2a316e0b0cf7a4ba50"}, +] + +[[package]] +name = "safetensors" +version = "0.4.0" +description = "" +optional = false +python-versions = ">=3.7" +files = [ + {file = "safetensors-0.4.0-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:2289ae6dbe6d027ecee016b28ced13a2e21a0b3a3a757a23033a2d1c0b1bad55"}, + {file = "safetensors-0.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:bf6458959f310f551cbbeef2255527ade5f783f952738e73e4d0136198cc3bfe"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b6b60a58a8f7cc7aed3b5b73dce1f5259a53c83d9ba43a76a874e6ad868c1b4d"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:491b3477e4d0d4599bb75d79da4b75af2e6ed9b1f6ec2b715991f0bc927bf09a"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59d2e10b7e0cd18bb73ed7c17c624a5957b003b81345e18159591771c26ee428"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f667a4c12fb593f5f66ce966cb1b14a7148898b2b1a7f79e0761040ae1e3c51"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f9909512bcb6f712bdd04c296cdfb0d8ff73d258ffc5af884bb62ea02d221e0"}, + {file = "safetensors-0.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d33d29e846821f0e4f92614022949b09ccf063cb36fe2f9fe099cde1efbfbb87"}, + {file = "safetensors-0.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4d512525a8e05a045ce6698066ba0c5378c174a83e0b3720a8c7799dc1bb06f3"}, + {file = "safetensors-0.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0219cea445177f6ad1f9acd3a8d025440c8ff436d70a4a7c7ba9c36066aa9474"}, + {file = "safetensors-0.4.0-cp310-none-win32.whl", hash = "sha256:67ab171eeaad6972d3971c53d29d53353c67f6743284c6d637b59fa3e54c8a94"}, + {file = "safetensors-0.4.0-cp310-none-win_amd64.whl", hash = "sha256:7ffc736039f08a9ca1f09816a7481b8e4469c06e8f8a5ffa8cb67ddd79e6d77f"}, + {file = "safetensors-0.4.0-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:4fe9e3737b30de458225a23926219ca30b902ee779b6a3df96eaab2b6d625ec2"}, + {file = "safetensors-0.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e7916e814a90008de767b1c164a1d83803693c661ffe9af5a697b22e2752edb0"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cbc4a4da01143472323c145f3c289e5f6fabde0ac0a3414dabf912a21692fff4"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a54c21654a47669b38e359e8f852af754b786c9da884bb61ad5e9af12bd71ccb"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:25cd407955bad5340ba17f9f8ac789a0d751601a311e2f7b2733f9384478c95e"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:82e8fc4e3503cd738fd40718a430fe0e5ce6e7ff91a73d6ce628bbb89c41e8ce"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:48b92059b1a4ad163024d4f526e0e73ebe2bb3ae70537e15e347820b4de5dc27"}, + {file = "safetensors-0.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5daa05058f7dce85b5f9f60c4eab483ed7859d63978f08a76e52e78859ff20ca"}, + {file = "safetensors-0.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a86565a5c112dd855909e20144947b4f53abb78c4de207f36ca71ee63ba5b90d"}, + {file = "safetensors-0.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:38032078ed9fea52d06584e441bccc73fb475c4581600c6d6166de2fe2deb3d1"}, + {file = "safetensors-0.4.0-cp311-none-win32.whl", hash = "sha256:2f99d90c91b7c76b40a862acd9085bc77f7974a27dee7cfcebe46149af5a99a1"}, + {file = "safetensors-0.4.0-cp311-none-win_amd64.whl", hash = "sha256:74e2a448ffe19be188b457b130168190ee73b5a75e45ba96796320c1f5ae35d2"}, + {file = "safetensors-0.4.0-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:1e2f9c69b41d03b4826ffb96b29e07444bb6b34a78a7bafd0b88d59e8ec75b8a"}, + {file = "safetensors-0.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3910fb5bf747413b59f1a34e6d2a993b589fa7d919709518823c70efaaa350bd"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf8fdca709b2470a35a59b1e6dffea75cbe1214b22612b5dd4c93947697aea8b"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f27b8ef814c5fb43456caeb7f3cbb889b76115180aad1f42402839c14a47c5b"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7b2d6101eccc43c7be0cb052f13ceda64288b3d8b344b988ed08d7133cbce2f3"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdc34027b545a69be3d4220c140b276129523e4e46db06ad1a0b60d6a4cf9214"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db7bb48ca9e90bb9526c71b388d38d8de160c0354f4c5126df23e8701a870dcb"}, + {file = "safetensors-0.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a78ffc0795d3595cd9e4d453502e35f764276c49e434b25556a15a337db4dafc"}, + {file = "safetensors-0.4.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8e735b0f79090f6855b55e205e820b7b595502ffca0009a5c13eef3661ce465b"}, + {file = "safetensors-0.4.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f8d2416734e850d5392afffbcb2b8985ea29fb171f1cb197e2ae51b8e35d6438"}, + {file = "safetensors-0.4.0-cp37-cp37m-macosx_10_7_x86_64.whl", hash = "sha256:e853e189ba7d47eaf561094586692ba2bbdd258c096f1755805cac098de0e6ab"}, + {file = "safetensors-0.4.0-cp37-cp37m-macosx_11_0_arm64.whl", hash = "sha256:4b2aa57b5a4d576f3d1dd6e56980026340f156f8a13c13016bfac4e25295b53f"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b6c1316ffde6cb4bf22c7445bc9fd224b4d1b9dd7320695f5611c89e802e4b6"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:003077ec85261d00061058fa12e3c1d2055366b02ce8f2938929359ffbaff2b8"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bd63d83a92f1437a8b0431779320376030ae43ace980bea5686d515de0784100"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2077801800b4b13301d8d6290c7fb5bd60737320001717153ebc4371776643b5"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7abe0e157a49a75aeeccfbc4f3dac38d8f98512d3cdb35c200f8e628dc5773cf"}, + {file = "safetensors-0.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3bfed574f6b1e7e7fe1f17213278875ef6c6e8b1582ab6eda93947db1178cae6"}, + {file = "safetensors-0.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:964ef166a286ce3b023d0d0bd0e21d440a1c8028981c8abdb136bc7872ba9b3d"}, + {file = "safetensors-0.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:44f84373e42183bd56a13a1f2d8acb1db7fedaeffbd83e79cec861477eee1af4"}, + {file = "safetensors-0.4.0-cp37-none-win32.whl", hash = "sha256:c68132727dd86fb641102e494d445f705efe402f4d5e24b278183a15499ab400"}, + {file = "safetensors-0.4.0-cp37-none-win_amd64.whl", hash = "sha256:1db87155454c168aef118d5657a403aee48a4cb08d8851a981157f07351ea317"}, + {file = "safetensors-0.4.0-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:9e583fa68e5a07cc859c4e13c1ebff12029904aa2e27185cf04a1f57fe9a81c4"}, + {file = "safetensors-0.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:73e7696dcf3f72f99545eb1abe6106ad65ff1f62381d6ce4b34be3272552897a"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4936096a57c62e84e200f92620a536be067fc5effe46ecc7f230ebb496ecd579"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:87b328ee1591adac332543e1f5fc2c2d7f149b745ebb0d58d7850818ff9cee27"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b69554c143336256260eceff1d3c0969172a641b54d4668489a711b05f92a2c0"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ebf6bcece5d5d1bd6416472f94604d2c834ca752ac60ed42dba7157e595a990"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6686ce01b8602d55a7d9903c90d4a6e6f90aeb6ddced7cf4605892d0ba94bcb8"}, + {file = "safetensors-0.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9b8fd6cc2f3bda444a048b541c843c7b7fefc89c4120d7898ea7d5b026e93891"}, + {file = "safetensors-0.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8a6abfe67692f81b8bdb99c837f28351c17e624ebf136970c850ee989c720446"}, + {file = "safetensors-0.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:27a24ca8822c469ee452db4c13418ba983315a0d863c018a9af15f2305eac38c"}, + {file = "safetensors-0.4.0-cp38-none-win32.whl", hash = "sha256:c4a0a47c8640167792d8261ee21b26430bbc39130a7edaad7f4c0bc05669d00e"}, + {file = "safetensors-0.4.0-cp38-none-win_amd64.whl", hash = "sha256:a738970a367f39249e2abb900d9441a8a86d7ff50083e5eaa6e7760a9f216014"}, + {file = "safetensors-0.4.0-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:806379f37e1abd5d302288c4b2f4186dd7ea7143d4c7811f90a8077f0ae8967b"}, + {file = "safetensors-0.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2b9b94133ed2ae9dda0e95dcace7b7556eba023ffa4c4ae6df8f99377f571d6a"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b563a14c43614815a6b524d2e4edeaace50b717f7e7487bb227dd5b68350f5a"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:00a9b157be660fb7ba88fa2eedd05ec93793a5b61e43e783e10cb0b995372802"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c8f194f45ab6aa767993c24f0aeb950af169dbc5d611b94c9021a1d13b8a1a34"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:469360b9451db10bfed3881378d5a71b347ecb1ab4f42367d77b8164a13af70b"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5f75fa97ccf32a3c7af476c6a0e851023197d3c078f6de3612008fff94735f9"}, + {file = "safetensors-0.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:acf0180283c2efae72f1d8c0a4a7974662091df01be3aa43b5237b1e52ed0a01"}, + {file = "safetensors-0.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:cd02b495ba0814619f40bda46771bb06dbbf1d42524b66fa03b2a736c77e4515"}, + {file = "safetensors-0.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c42bdea183dbaa99e2f0e6120dc524df79cf4289a6f90f30a534444ef20f49fa"}, + {file = "safetensors-0.4.0-cp39-none-win32.whl", hash = "sha256:cef7bb5d9feae7146c3c3c7b3aef7d2c8b39ba7f5ff4252d368eb69462a47076"}, + {file = "safetensors-0.4.0-cp39-none-win_amd64.whl", hash = "sha256:79dd46fb1f19282fd12f544471efb97823ede927cedbf9cf35550d92b349fdd2"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:002301c1afa32909f83745b0c124d002e7ae07e15671f3b43cbebd0ffc5e6037"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:67762d36ae088c73d4a3c96bfc4ea8d31233554f35b6cace3a18533238d462ea"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f45230f20a206e5e4c7f7bbf9342178410c6f8b0af889843aa99045a76f7691"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f2ca939bbd8fb2f4dfa28e39a146dad03bc9325e9fc831b68f7b98f69a5a2f1"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:61a00f281391fae5ce91df70918bb61c12d2d514a493fd8056e12114be729911"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:435fd136a42492b280cb55126f9ce9535b35dd49df2c5d572a5945455a439448"}, + {file = "safetensors-0.4.0-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f0daa788273d683258fb1e4a5e16bef4486b2fca536451a2591bc0f4a6488895"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-macosx_10_7_x86_64.whl", hash = "sha256:0620ab0d41e390ccb1c4ea8f63dc00cb5f0b96a5cdd3cd0d64c21765720c074a"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc1fa8d067733cb67f22926689ee808f08afacf7700d2ffb44efae90a0693eb1"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcaa40bc363edda145db75cd030f3b1822e5478d550c3500a42502ecef32c959"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b561fbc044db7beff2ece0ec219a291809d45a38d30c6b38e7cc46482582f4ba"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:79a983b09782dacf9a1adb19bb98f4a8f6c3144108939f572c047b5797e43cf5"}, + {file = "safetensors-0.4.0-pp37-pypy37_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:10b65cd3ad79f5d0daf281523b4146bc271a34bb7430d4e03212e0de8622dab8"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:114decacc475a6a9e2f9102a00c171d113ddb5d35cb0bda0db2c0c82b2eaa9ce"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:72ddb741dd5fe42521db76a70e012f76995516a12e7e0ef26be03ea9be77802a"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c5556c2ec75f5a6134866eddd7341cb36062e6edaea343478a279591b63ddba"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed50f239b0ce7ae85b078395593b4a351ede7e6f73af25f4873e3392336f64c9"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:495dcaea8fbab70b927d2274e2547824462737acbf98ccd851a71124f779a5c6"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:3f4d90c79a65ba2fe2ff0876f6140748f0a3ce6a21e27a35190f4f96321803f8"}, + {file = "safetensors-0.4.0-pp38-pypy38_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:7a524382b5c55b5fbb168e0e9d3f502450c8cf3fb81b93e880018437c206a482"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:9849ea60c7e840bfdd6030ad454d4a6ba837b3398c902f15a30460dd6961c28c"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:6c42623ae7045615d9eaa6877b9df1db4e9cc71ecc14bcc721ea1e475dddd595"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80cb8342f00f3c41b3b93b1a599b84723280d3ac90829bc62262efc03ab28793"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8c4f5ed4ede384dea8c99bae76b0718a828dbf7b2c8ced1f44e3b9b1a124475"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:40d7cf03493bfe75ef62e2c716314474b28d9ba5bf4909763e4b8dd14330c01a"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:232029f0a9fa6fa1f737324eda98a700409811186888536a2333cbbf64e41741"}, + {file = "safetensors-0.4.0-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:9ed55f4a20c78ff3e8477efb63c8303c2152cdfb3bfea4d025a80f54d38fd628"}, + {file = "safetensors-0.4.0.tar.gz", hash = "sha256:b985953c3cf11e942eac4317ef3db3da713e274109cf7cfb6076d877054f013e"}, +] + +[package.extras] +all = ["safetensors[jax]", "safetensors[numpy]", "safetensors[paddlepaddle]", "safetensors[pinned-tf]", "safetensors[quality]", "safetensors[testing]", "safetensors[torch]"] +dev = ["safetensors[all]"] +jax = ["flax (>=0.6.3)", "jax (>=0.3.25)", "jaxlib (>=0.3.25)", "safetensors[numpy]"] +numpy = ["numpy (>=1.21.6)"] +paddlepaddle = ["paddlepaddle (>=2.4.1)", "safetensors[numpy]"] +pinned-tf = ["safetensors[numpy]", "tensorflow (==2.11.0)"] +quality = ["black (==22.3)", "click (==8.0.4)", "flake8 (>=3.8.3)", "isort (>=5.5.4)"] +tensorflow = ["safetensors[numpy]", "tensorflow (>=2.11.0)"] +testing = ["h5py (>=3.7.0)", "huggingface_hub (>=0.12.1)", "hypothesis (>=6.70.2)", "pytest (>=7.2.0)", "pytest-benchmark (>=4.0.0)", "safetensors[numpy]", "setuptools_rust (>=1.5.2)"] +torch = ["safetensors[numpy]", "torch (>=1.10)"] + +[[package]] +name = "scikit-learn" +version = "1.3.2" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scikit-learn-1.3.2.tar.gz", hash = "sha256:a2f54c76accc15a34bfb9066e6c7a56c1e7235dda5762b990792330b52ccfb05"}, + {file = "scikit_learn-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e326c0eb5cf4d6ba40f93776a20e9a7a69524c4db0757e7ce24ba222471ee8a1"}, + {file = "scikit_learn-1.3.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:535805c2a01ccb40ca4ab7d081d771aea67e535153e35a1fd99418fcedd1648a"}, + {file = "scikit_learn-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1215e5e58e9880b554b01187b8c9390bf4dc4692eedeaf542d3273f4785e342c"}, + {file = "scikit_learn-1.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ee107923a623b9f517754ea2f69ea3b62fc898a3641766cb7deb2f2ce450161"}, + {file = "scikit_learn-1.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:35a22e8015048c628ad099da9df5ab3004cdbf81edc75b396fd0cff8699ac58c"}, + {file = "scikit_learn-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6fb6bc98f234fda43163ddbe36df8bcde1d13ee176c6dc9b92bb7d3fc842eb66"}, + {file = "scikit_learn-1.3.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:18424efee518a1cde7b0b53a422cde2f6625197de6af36da0b57ec502f126157"}, + {file = "scikit_learn-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3271552a5eb16f208a6f7f617b8cc6d1f137b52c8a1ef8edf547db0259b2c9fb"}, + {file = "scikit_learn-1.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4144a5004a676d5022b798d9e573b05139e77f271253a4703eed295bde0433"}, + {file = "scikit_learn-1.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:67f37d708f042a9b8d59551cf94d30431e01374e00dc2645fa186059c6c5d78b"}, + {file = "scikit_learn-1.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8db94cd8a2e038b37a80a04df8783e09caac77cbe052146432e67800e430c028"}, + {file = "scikit_learn-1.3.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:61a6efd384258789aa89415a410dcdb39a50e19d3d8410bd29be365bcdd512d5"}, + {file = "scikit_learn-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb06f8dce3f5ddc5dee1715a9b9f19f20d295bed8e3cd4fa51e1d050347de525"}, + {file = "scikit_learn-1.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b2de18d86f630d68fe1f87af690d451388bb186480afc719e5f770590c2ef6c"}, + {file = "scikit_learn-1.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:0402638c9a7c219ee52c94cbebc8fcb5eb9fe9c773717965c1f4185588ad3107"}, + {file = "scikit_learn-1.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a19f90f95ba93c1a7f7924906d0576a84da7f3b2282ac3bfb7a08a32801add93"}, + {file = "scikit_learn-1.3.2-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:b8692e395a03a60cd927125eef3a8e3424d86dde9b2370d544f0ea35f78a8073"}, + {file = "scikit_learn-1.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15e1e94cc23d04d39da797ee34236ce2375ddea158b10bee3c343647d615581d"}, + {file = "scikit_learn-1.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:785a2213086b7b1abf037aeadbbd6d67159feb3e30263434139c98425e3dcfcf"}, + {file = "scikit_learn-1.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:64381066f8aa63c2710e6b56edc9f0894cc7bf59bd71b8ce5613a4559b6145e0"}, + {file = "scikit_learn-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6c43290337f7a4b969d207e620658372ba3c1ffb611f8bc2b6f031dc5c6d1d03"}, + {file = "scikit_learn-1.3.2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:dc9002fc200bed597d5d34e90c752b74df516d592db162f756cc52836b38fe0e"}, + {file = "scikit_learn-1.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d08ada33e955c54355d909b9c06a4789a729977f165b8bae6f225ff0a60ec4a"}, + {file = "scikit_learn-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:763f0ae4b79b0ff9cca0bf3716bcc9915bdacff3cebea15ec79652d1cc4fa5c9"}, + {file = "scikit_learn-1.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:ed932ea780517b00dae7431e031faae6b49b20eb6950918eb83bd043237950e0"}, +] + +[package.dependencies] +joblib = ">=1.1.1" +numpy = ">=1.17.3,<2.0" +scipy = ">=1.5.0" +threadpoolctl = ">=2.0.0" + +[package.extras] +benchmark = ["matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "pandas (>=1.0.5)"] +docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)", "sphinx (>=6.0.0)", "sphinx-copybutton (>=0.5.2)", "sphinx-gallery (>=0.10.1)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=3.1.3)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)"] +tests = ["black (>=23.3.0)", "matplotlib (>=3.1.3)", "mypy (>=1.3)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.0.272)", "scikit-image (>=0.16.2)"] + +[[package]] +name = "scipy" +version = "1.9.3" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scipy-1.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1884b66a54887e21addf9c16fb588720a8309a57b2e258ae1c7986d4444d3bc0"}, + {file = "scipy-1.9.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:83b89e9586c62e787f5012e8475fbb12185bafb996a03257e9675cd73d3736dd"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a72d885fa44247f92743fc20732ae55564ff2a519e8302fb7e18717c5355a8b"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d01e1dd7b15bd2449c8bfc6b7cc67d630700ed655654f0dfcf121600bad205c9"}, + {file = "scipy-1.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:68239b6aa6f9c593da8be1509a05cb7f9efe98b80f43a5861cd24c7557e98523"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b41bc822679ad1c9a5f023bc93f6d0543129ca0f37c1ce294dd9d386f0a21096"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:90453d2b93ea82a9f434e4e1cba043e779ff67b92f7a0e85d05d286a3625df3c"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83c06e62a390a9167da60bedd4575a14c1f58ca9dfde59830fc42e5197283dab"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abaf921531b5aeaafced90157db505e10345e45038c39e5d9b6c7922d68085cb"}, + {file = "scipy-1.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:06d2e1b4c491dc7d8eacea139a1b0b295f74e1a1a0f704c375028f8320d16e31"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5a04cd7d0d3eff6ea4719371cbc44df31411862b9646db617c99718ff68d4840"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:545c83ffb518094d8c9d83cce216c0c32f8c04aaf28b92cc8283eda0685162d5"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d54222d7a3ba6022fdf5773931b5d7c56efe41ede7f7128c7b1637700409108"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cff3a5295234037e39500d35316a4c5794739433528310e117b8a9a0c76d20fc"}, + {file = "scipy-1.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:2318bef588acc7a574f5bfdff9c172d0b1bf2c8143d9582e05f878e580a3781e"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d644a64e174c16cb4b2e41dfea6af722053e83d066da7343f333a54dae9bc31c"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:da8245491d73ed0a994ed9c2e380fd058ce2fa8a18da204681f2fe1f57f98f95"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4db5b30849606a95dcf519763dd3ab6fe9bd91df49eba517359e450a7d80ce2e"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c68db6b290cbd4049012990d7fe71a2abd9ffbe82c0056ebe0f01df8be5436b0"}, + {file = "scipy-1.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:5b88e6d91ad9d59478fafe92a7c757d00c59e3bdc3331be8ada76a4f8d683f58"}, + {file = "scipy-1.9.3.tar.gz", hash = "sha256:fbc5c05c85c1a02be77b1ff591087c83bc44579c6d2bd9fb798bb64ea5e1a027"}, +] + +[package.dependencies] +numpy = ">=1.18.5,<1.26.0" + +[package.extras] +dev = ["flake8", "mypy", "pycodestyle", "typing_extensions"] +doc = ["matplotlib (>2)", "numpydoc", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-panels (>=0.5.2)", "sphinx-tabs"] +test = ["asv", "gmpy2", "mpmath", "pytest", "pytest-cov", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "sentence-transformers" +version = "2.2.2" +description = "Multilingual text embeddings" +optional = false +python-versions = ">=3.6.0" +files = [ + {file = "sentence-transformers-2.2.2.tar.gz", hash = "sha256:dbc60163b27de21076c9a30d24b5b7b6fa05141d68cf2553fa9a77bf79a29136"}, +] + +[package.dependencies] +huggingface-hub = ">=0.4.0" +nltk = "*" +numpy = "*" +scikit-learn = "*" +scipy = "*" +sentencepiece = "*" +torch = ">=1.6.0" +torchvision = "*" +tqdm = "*" +transformers = ">=4.6.0,<5.0.0" + +[[package]] +name = "sentencepiece" +version = "0.1.99" +description = "SentencePiece python wrapper" +optional = false +python-versions = "*" +files = [ + {file = "sentencepiece-0.1.99-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0eb528e70571b7c02723e5804322469b82fe7ea418c96051d0286c0fa028db73"}, + {file = "sentencepiece-0.1.99-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:77d7fafb2c4e4659cbdf303929503f37a26eabc4ff31d3a79bf1c5a1b338caa7"}, + {file = "sentencepiece-0.1.99-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:be9cf5b9e404c245aeb3d3723c737ba7a8f5d4ba262ef233a431fa6c45f732a0"}, + {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baed1a26464998f9710d20e52607c29ffd4293e7c71c6a1f83f51ad0911ec12c"}, + {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9832f08bb372d4c8b567612f8eab9e36e268dff645f1c28f9f8e851be705f6d1"}, + {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:019e7535108e309dae2b253a75834fc3128240aa87c00eb80732078cdc182588"}, + {file = "sentencepiece-0.1.99-cp310-cp310-win32.whl", hash = "sha256:fa16a830416bb823fa2a52cbdd474d1f7f3bba527fd2304fb4b140dad31bb9bc"}, + {file = "sentencepiece-0.1.99-cp310-cp310-win_amd64.whl", hash = "sha256:14b0eccb7b641d4591c3e12ae44cab537d68352e4d3b6424944f0c447d2348d5"}, + {file = "sentencepiece-0.1.99-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6d3c56f24183a1e8bd61043ff2c58dfecdc68a5dd8955dc13bab83afd5f76b81"}, + {file = "sentencepiece-0.1.99-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ed6ea1819fd612c989999e44a51bf556d0ef6abfb553080b9be3d347e18bcfb7"}, + {file = "sentencepiece-0.1.99-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a2a0260cd1fb7bd8b4d4f39dc2444a8d5fd4e0a0c4d5c899810ef1abf99b2d45"}, + {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a1abff4d1ff81c77cac3cc6fefa34fa4b8b371e5ee51cb7e8d1ebc996d05983"}, + {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:004e6a621d4bc88978eecb6ea7959264239a17b70f2cbc348033d8195c9808ec"}, + {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db361e03342c41680afae5807590bc88aa0e17cfd1a42696a160e4005fcda03b"}, + {file = "sentencepiece-0.1.99-cp311-cp311-win32.whl", hash = "sha256:2d95e19168875b70df62916eb55428a0cbcb834ac51d5a7e664eda74def9e1e0"}, + {file = "sentencepiece-0.1.99-cp311-cp311-win_amd64.whl", hash = "sha256:f90d73a6f81248a909f55d8e6ef56fec32d559e1e9af045f0b0322637cb8e5c7"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:62e24c81e74bd87a6e0d63c51beb6527e4c0add67e1a17bac18bcd2076afcfeb"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57efcc2d51caff20d9573567d9fd3f854d9efe613ed58a439c78c9f93101384a"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a904c46197993bd1e95b93a6e373dca2f170379d64441041e2e628ad4afb16f"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d89adf59854741c0d465f0e1525b388c0d174f611cc04af54153c5c4f36088c4"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-win32.whl", hash = "sha256:47c378146928690d1bc106fdf0da768cebd03b65dd8405aa3dd88f9c81e35dba"}, + {file = "sentencepiece-0.1.99-cp36-cp36m-win_amd64.whl", hash = "sha256:9ba142e7a90dd6d823c44f9870abdad45e6c63958eb60fe44cca6828d3b69da2"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b7b1a9ae4d7c6f1f867e63370cca25cc17b6f4886729595b885ee07a58d3cec3"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0f644c9d4d35c096a538507b2163e6191512460035bf51358794a78515b74f7"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c8843d23a0f686d85e569bd6dcd0dd0e0cbc03731e63497ca6d5bacd18df8b85"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33e6f690a1caebb4867a2e367afa1918ad35be257ecdb3455d2bbd787936f155"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-win32.whl", hash = "sha256:8a321866c2f85da7beac74a824b4ad6ddc2a4c9bccd9382529506d48f744a12c"}, + {file = "sentencepiece-0.1.99-cp37-cp37m-win_amd64.whl", hash = "sha256:c42f753bcfb7661c122a15b20be7f684b61fc8592c89c870adf52382ea72262d"}, + {file = "sentencepiece-0.1.99-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:85b476406da69c70586f0bb682fcca4c9b40e5059814f2db92303ea4585c650c"}, + {file = "sentencepiece-0.1.99-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cfbcfe13c69d3f87b7fcd5da168df7290a6d006329be71f90ba4f56bc77f8561"}, + {file = "sentencepiece-0.1.99-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:445b0ec381af1cd4eef95243e7180c63d9c384443c16c4c47a28196bd1cda937"}, + {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6890ea0f2b4703f62d0bf27932e35808b1f679bdb05c7eeb3812b935ba02001"}, + {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fb71af492b0eefbf9f2501bec97bcd043b6812ab000d119eaf4bd33f9e283d03"}, + {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:27b866b5bd3ddd54166bbcbf5c8d7dd2e0b397fac8537991c7f544220b1f67bc"}, + {file = "sentencepiece-0.1.99-cp38-cp38-win32.whl", hash = "sha256:b133e8a499eac49c581c3c76e9bdd08c338cc1939e441fee6f92c0ccb5f1f8be"}, + {file = "sentencepiece-0.1.99-cp38-cp38-win_amd64.whl", hash = "sha256:0eaf3591dd0690a87f44f4df129cf8d05d8a4029b5b6709b489b8e27f9a9bcff"}, + {file = "sentencepiece-0.1.99-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:38efeda9bbfb55052d482a009c6a37e52f42ebffcea9d3a98a61de7aee356a28"}, + {file = "sentencepiece-0.1.99-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6c030b081dc1e1bcc9fadc314b19b740715d3d566ad73a482da20d7d46fd444c"}, + {file = "sentencepiece-0.1.99-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:84dbe53e02e4f8a2e45d2ac3e430d5c83182142658e25edd76539b7648928727"}, + {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0b0f55d0a0ee1719b4b04221fe0c9f0c3461dc3dabd77a035fa2f4788eb3ef9a"}, + {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18e800f206cd235dc27dc749299e05853a4e4332e8d3dfd81bf13d0e5b9007d9"}, + {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ae1c40cda8f9d5b0423cfa98542735c0235e7597d79caf318855cdf971b2280"}, + {file = "sentencepiece-0.1.99-cp39-cp39-win32.whl", hash = "sha256:c84ce33af12ca222d14a1cdd37bd76a69401e32bc68fe61c67ef6b59402f4ab8"}, + {file = "sentencepiece-0.1.99-cp39-cp39-win_amd64.whl", hash = "sha256:350e5c74d739973f1c9643edb80f7cc904dc948578bcb1d43c6f2b173e5d18dd"}, + {file = "sentencepiece-0.1.99.tar.gz", hash = "sha256:189c48f5cb2949288f97ccdb97f0473098d9c3dcf5a3d99d4eabe719ec27297f"}, +] + +[[package]] +name = "setuptools" +version = "68.2.2" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-68.2.2-py3-none-any.whl", hash = "sha256:b454a35605876da60632df1a60f736524eb73cc47bbc9f3f1ef1b644de74fd2a"}, + {file = "setuptools-68.2.2.tar.gz", hash = "sha256:4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.1)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] + +[[package]] +name = "simple-websocket" +version = "1.0.0" +description = "Simple WebSocket server and client for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "simple-websocket-1.0.0.tar.gz", hash = "sha256:17d2c72f4a2bd85174a97e3e4c88b01c40c3f81b7b648b0cc3ce1305968928c8"}, + {file = "simple_websocket-1.0.0-py3-none-any.whl", hash = "sha256:1d5bf585e415eaa2083e2bcf02a3ecf91f9712e7b3e6b9fa0b461ad04e0837bc"}, +] + +[package.dependencies] +wsproto = "*" + +[package.extras] +docs = ["sphinx"] + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] + +[[package]] +name = "sniffio" +version = "1.3.0" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, + {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, +] + +[[package]] +name = "sqlalchemy" +version = "2.0.22" +description = "Database Abstraction Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-2.0.22-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f146c61ae128ab43ea3a0955de1af7e1633942c2b2b4985ac51cc292daf33222"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:875de9414393e778b655a3d97d60465eb3fae7c919e88b70cc10b40b9f56042d"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:13790cb42f917c45c9c850b39b9941539ca8ee7917dacf099cc0b569f3d40da7"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e04ab55cf49daf1aeb8c622c54d23fa4bec91cb051a43cc24351ba97e1dd09f5"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:a42c9fa3abcda0dcfad053e49c4f752eef71ecd8c155221e18b99d4224621176"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:14cd3bcbb853379fef2cd01e7c64a5d6f1d005406d877ed9509afb7a05ff40a5"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-win32.whl", hash = "sha256:d143c5a9dada696bcfdb96ba2de4a47d5a89168e71d05a076e88a01386872f97"}, + {file = "SQLAlchemy-2.0.22-cp310-cp310-win_amd64.whl", hash = "sha256:ccd87c25e4c8559e1b918d46b4fa90b37f459c9b4566f1dfbce0eb8122571547"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4f6ff392b27a743c1ad346d215655503cec64405d3b694228b3454878bf21590"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f776c2c30f0e5f4db45c3ee11a5f2a8d9de68e81eb73ec4237de1e32e04ae81c"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c8f1792d20d2f4e875ce7a113f43c3561ad12b34ff796b84002a256f37ce9437"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d80eeb5189d7d4b1af519fc3f148fe7521b9dfce8f4d6a0820e8f5769b005051"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:69fd9e41cf9368afa034e1c81f3570afb96f30fcd2eb1ef29cb4d9371c6eece2"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:54bcceaf4eebef07dadfde424f5c26b491e4a64e61761dea9459103ecd6ccc95"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-win32.whl", hash = "sha256:7ee7ccf47aa503033b6afd57efbac6b9e05180f492aeed9fcf70752556f95624"}, + {file = "SQLAlchemy-2.0.22-cp311-cp311-win_amd64.whl", hash = "sha256:b560f075c151900587ade06706b0c51d04b3277c111151997ea0813455378ae0"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:2c9bac865ee06d27a1533471405ad240a6f5d83195eca481f9fc4a71d8b87df8"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:625b72d77ac8ac23da3b1622e2da88c4aedaee14df47c8432bf8f6495e655de2"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b39a6e21110204a8c08d40ff56a73ba542ec60bab701c36ce721e7990df49fb9"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53a766cb0b468223cafdf63e2d37f14a4757476157927b09300c8c5832d88560"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0e1ce8ebd2e040357dde01a3fb7d30d9b5736b3e54a94002641dfd0aa12ae6ce"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:505f503763a767556fa4deae5194b2be056b64ecca72ac65224381a0acab7ebe"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-win32.whl", hash = "sha256:154a32f3c7b00de3d090bc60ec8006a78149e221f1182e3edcf0376016be9396"}, + {file = "SQLAlchemy-2.0.22-cp312-cp312-win_amd64.whl", hash = "sha256:129415f89744b05741c6f0b04a84525f37fbabe5dc3774f7edf100e7458c48cd"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3940677d341f2b685a999bffe7078697b5848a40b5f6952794ffcf3af150c301"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55914d45a631b81a8a2cb1a54f03eea265cf1783241ac55396ec6d735be14883"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2096d6b018d242a2bcc9e451618166f860bb0304f590d205173d317b69986c95"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:19c6986cf2fb4bc8e0e846f97f4135a8e753b57d2aaaa87c50f9acbe606bd1db"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:6ac28bd6888fe3c81fbe97584eb0b96804bd7032d6100b9701255d9441373ec1"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-win32.whl", hash = "sha256:cb9a758ad973e795267da334a92dd82bb7555cb36a0960dcabcf724d26299db8"}, + {file = "SQLAlchemy-2.0.22-cp37-cp37m-win_amd64.whl", hash = "sha256:40b1206a0d923e73aa54f0a6bd61419a96b914f1cd19900b6c8226899d9742ad"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3aa1472bf44f61dd27987cd051f1c893b7d3b17238bff8c23fceaef4f1133868"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:56a7e2bb639df9263bf6418231bc2a92a773f57886d371ddb7a869a24919face"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ccca778c0737a773a1ad86b68bda52a71ad5950b25e120b6eb1330f0df54c3d0"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c6c3e9350f9fb16de5b5e5fbf17b578811a52d71bb784cc5ff71acb7de2a7f9"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:564e9f9e4e6466273dbfab0e0a2e5fe819eec480c57b53a2cdee8e4fdae3ad5f"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:af66001d7b76a3fab0d5e4c1ec9339ac45748bc4a399cbc2baa48c1980d3c1f4"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-win32.whl", hash = "sha256:9e55dff5ec115316dd7a083cdc1a52de63693695aecf72bc53a8e1468ce429e5"}, + {file = "SQLAlchemy-2.0.22-cp38-cp38-win_amd64.whl", hash = "sha256:4e869a8ff7ee7a833b74868a0887e8462445ec462432d8cbeff5e85f475186da"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9886a72c8e6371280cb247c5d32c9c8fa141dc560124348762db8a8b236f8692"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a571bc8ac092a3175a1d994794a8e7a1f2f651e7c744de24a19b4f740fe95034"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8db5ba8b7da759b727faebc4289a9e6a51edadc7fc32207a30f7c6203a181592"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b0b3f2686c3f162123adba3cb8b626ed7e9b8433ab528e36ed270b4f70d1cdb"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0c1fea8c0abcb070ffe15311853abfda4e55bf7dc1d4889497b3403629f3bf00"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4bb062784f37b2d75fd9b074c8ec360ad5df71f933f927e9e95c50eb8e05323c"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-win32.whl", hash = "sha256:58a3aba1bfb32ae7af68da3f277ed91d9f57620cf7ce651db96636790a78b736"}, + {file = "SQLAlchemy-2.0.22-cp39-cp39-win_amd64.whl", hash = "sha256:92e512a6af769e4725fa5b25981ba790335d42c5977e94ded07db7d641490a85"}, + {file = "SQLAlchemy-2.0.22-py3-none-any.whl", hash = "sha256:3076740335e4aaadd7deb3fe6dcb96b3015f1613bd190a4e1634e1b99b02ec86"}, + {file = "SQLAlchemy-2.0.22.tar.gz", hash = "sha256:5434cc601aa17570d79e5377f5fd45ff92f9379e2abed0be5e8c2fba8d353d2b"}, +] + +[package.dependencies] +greenlet = {version = "!=0.4.17", markers = "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\""} +typing-extensions = ">=4.2.0" + +[package.extras] +aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing-extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)"] +mysql = ["mysqlclient (>=1.4.0)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx-oracle (>=7)"] +oracle-oracledb = ["oracledb (>=1.0.1)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.29.1)"] +postgresql-psycopg = ["psycopg (>=3.0.7)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] +pymysql = ["pymysql"] +sqlcipher = ["sqlcipher3-binary"] + +[[package]] +name = "sseclient-py" +version = "1.8.0" +description = "SSE client for Python" +optional = false +python-versions = "*" +files = [ + {file = "sseclient-py-1.8.0.tar.gz", hash = "sha256:c547c5c1a7633230a38dc599a21a2dc638f9b5c297286b48b46b935c71fac3e8"}, + {file = "sseclient_py-1.8.0-py2.py3-none-any.whl", hash = "sha256:4ecca6dc0b9f963f8384e9d7fd529bf93dd7d708144c4fb5da0e0a1a926fee83"}, +] + +[[package]] +name = "starlette" +version = "0.27.0" +description = "The little ASGI library that shines." +optional = false +python-versions = ">=3.7" +files = [ + {file = "starlette-0.27.0-py3-none-any.whl", hash = "sha256:918416370e846586541235ccd38a474c08b80443ed31c578a418e2209b3eef91"}, + {file = "starlette-0.27.0.tar.gz", hash = "sha256:6a6b0d042acb8d469a01eba54e9cda6cbd24ac602c4cd016723117d6a7e73b75"}, +] + +[package.dependencies] +anyio = ">=3.4.0,<5" +typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} + +[package.extras] +full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"] + +[[package]] +name = "sympy" +version = "1.12" +description = "Computer algebra system (CAS) in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "sympy-1.12-py3-none-any.whl", hash = "sha256:c3588cd4295d0c0f603d0f2ae780587e64e2efeedb3521e46b9bb1d08d184fa5"}, + {file = "sympy-1.12.tar.gz", hash = "sha256:ebf595c8dac3e0fdc4152c51878b498396ec7f30e7a914d6071e674d49420fb8"}, +] + +[package.dependencies] +mpmath = ">=0.19" + +[[package]] +name = "syncer" +version = "2.0.3" +description = "Async to sync converter" +optional = false +python-versions = "*" +files = [ + {file = "syncer-2.0.3.tar.gz", hash = "sha256:4340eb54b54368724a78c5c0763824470201804fe9180129daf3635cb500550f"}, +] + +[[package]] +name = "tenacity" +version = "8.2.3" +description = "Retry code until it succeeds" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, + {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, +] + +[package.extras] +doc = ["reno", "sphinx", "tornado (>=4.5)"] + +[[package]] +name = "threadpoolctl" +version = "3.2.0" +description = "threadpoolctl" +optional = false +python-versions = ">=3.8" +files = [ + {file = "threadpoolctl-3.2.0-py3-none-any.whl", hash = "sha256:2b7818516e423bdaebb97c723f86a7c6b0a83d3f3b0970328d66f4d9104dc032"}, + {file = "threadpoolctl-3.2.0.tar.gz", hash = "sha256:c96a0ba3bdddeaca37dc4cc7344aafad41cdb8c313f74fdfe387a867bba93355"}, +] + +[[package]] +name = "tiktoken" +version = "0.5.1" +description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models" +optional = false +python-versions = ">=3.8" +files = [ + {file = "tiktoken-0.5.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2b0bae3fd56de1c0a5874fb6577667a3c75bf231a6cef599338820210c16e40a"}, + {file = "tiktoken-0.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e529578d017045e2f0ed12d2e00e7e99f780f477234da4aae799ec4afca89f37"}, + {file = "tiktoken-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edd2ffbb789712d83fee19ab009949f998a35c51ad9f9beb39109357416344ff"}, + {file = "tiktoken-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4c73d47bdc1a3f1f66ffa019af0386c48effdc6e8797e5e76875f6388ff72e9"}, + {file = "tiktoken-0.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:46b8554b9f351561b1989157c6bb54462056f3d44e43aa4e671367c5d62535fc"}, + {file = "tiktoken-0.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:92ed3bbf71a175a6a4e5fbfcdb2c422bdd72d9b20407e00f435cf22a68b4ea9b"}, + {file = "tiktoken-0.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:714efb2f4a082635d9f5afe0bf7e62989b72b65ac52f004eb7ac939f506c03a4"}, + {file = "tiktoken-0.5.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a10488d1d1a5f9c9d2b2052fdb4cf807bba545818cb1ef724a7f5d44d9f7c3d4"}, + {file = "tiktoken-0.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8079ac065572fe0e7c696dbd63e1fdc12ce4cdca9933935d038689d4732451df"}, + {file = "tiktoken-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ef730db4097f5b13df8d960f7fdda2744fe21d203ea2bb80c120bb58661b155"}, + {file = "tiktoken-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:426e7def5f3f23645dada816be119fa61e587dfb4755de250e136b47a045c365"}, + {file = "tiktoken-0.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:323cec0031358bc09aa965c2c5c1f9f59baf76e5b17e62dcc06d1bb9bc3a3c7c"}, + {file = "tiktoken-0.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5abd9436f02e2c8eda5cce2ff8015ce91f33e782a7423de2a1859f772928f714"}, + {file = "tiktoken-0.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:1fe99953b63aabc0c9536fbc91c3c9000d78e4755edc28cc2e10825372046a2d"}, + {file = "tiktoken-0.5.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:dcdc630461927718b317e6f8be7707bd0fc768cee1fdc78ddaa1e93f4dc6b2b1"}, + {file = "tiktoken-0.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1f2b3b253e22322b7f53a111e1f6d7ecfa199b4f08f3efdeb0480f4033b5cdc6"}, + {file = "tiktoken-0.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:43ce0199f315776dec3ea7bf86f35df86d24b6fcde1babd3e53c38f17352442f"}, + {file = "tiktoken-0.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a84657c083d458593c0235926b5c993eec0b586a2508d6a2020556e5347c2f0d"}, + {file = "tiktoken-0.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:c008375c0f3d97c36e81725308699116cd5804fdac0f9b7afc732056329d2790"}, + {file = "tiktoken-0.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:779c4dea5edd1d3178734d144d32231e0b814976bec1ec09636d1003ffe4725f"}, + {file = "tiktoken-0.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:b5dcfcf9bfb798e86fbce76d40a1d5d9e3f92131aecfa3d1e5c9ea1a20f1ef1a"}, + {file = "tiktoken-0.5.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9b180a22db0bbcc447f691ffc3cf7a580e9e0587d87379e35e58b826ebf5bc7b"}, + {file = "tiktoken-0.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2b756a65d98b7cf760617a6b68762a23ab8b6ef79922be5afdb00f5e8a9f4e76"}, + {file = "tiktoken-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba9873c253ca1f670e662192a0afcb72b41e0ba3e730f16c665099e12f4dac2d"}, + {file = "tiktoken-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:74c90d2be0b4c1a2b3f7dde95cd976757817d4df080d6af0ee8d461568c2e2ad"}, + {file = "tiktoken-0.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:709a5220891f2b56caad8327fab86281787704931ed484d9548f65598dea9ce4"}, + {file = "tiktoken-0.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5d5a187ff9c786fae6aadd49f47f019ff19e99071dc5b0fe91bfecc94d37c686"}, + {file = "tiktoken-0.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:e21840043dbe2e280e99ad41951c00eff8ee3b63daf57cd4c1508a3fd8583ea2"}, + {file = "tiktoken-0.5.1.tar.gz", hash = "sha256:27e773564232004f4f810fd1f85236673ec3a56ed7f1206fc9ed8670ebedb97a"}, +] + +[package.dependencies] +regex = ">=2022.1.18" +requests = ">=2.26.0" + +[package.extras] +blobfile = ["blobfile (>=2)"] + +[[package]] +name = "tokenizers" +version = "0.13.3" +description = "Fast and Customizable Tokenizers" +optional = false +python-versions = "*" +files = [ + {file = "tokenizers-0.13.3-cp310-cp310-macosx_10_11_x86_64.whl", hash = "sha256:f3835c5be51de8c0a092058a4d4380cb9244fb34681fd0a295fbf0a52a5fdf33"}, + {file = "tokenizers-0.13.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:4ef4c3e821730f2692489e926b184321e887f34fb8a6b80b8096b966ba663d07"}, + {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5fd1a6a25353e9aa762e2aae5a1e63883cad9f4e997c447ec39d071020459bc"}, + {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee0b1b311d65beab83d7a41c56a1e46ab732a9eed4460648e8eb0bd69fc2d059"}, + {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ef4215284df1277dadbcc5e17d4882bda19f770d02348e73523f7e7d8b8d396"}, + {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4d53976079cff8a033f778fb9adca2d9d69d009c02fa2d71a878b5f3963ed30"}, + {file = "tokenizers-0.13.3-cp310-cp310-win32.whl", hash = "sha256:1f0e3b4c2ea2cd13238ce43548959c118069db7579e5d40ec270ad77da5833ce"}, + {file = "tokenizers-0.13.3-cp310-cp310-win_amd64.whl", hash = "sha256:89649c00d0d7211e8186f7a75dfa1db6996f65edce4b84821817eadcc2d3c79e"}, + {file = "tokenizers-0.13.3-cp311-cp311-macosx_10_11_universal2.whl", hash = "sha256:56b726e0d2bbc9243872b0144515ba684af5b8d8cd112fb83ee1365e26ec74c8"}, + {file = "tokenizers-0.13.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:cc5c022ce692e1f499d745af293ab9ee6f5d92538ed2faf73f9708c89ee59ce6"}, + {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f55c981ac44ba87c93e847c333e58c12abcbb377a0c2f2ef96e1a266e4184ff2"}, + {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f247eae99800ef821a91f47c5280e9e9afaeed9980fc444208d5aa6ba69ff148"}, + {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4b3e3215d048e94f40f1c95802e45dcc37c5b05eb46280fc2ccc8cd351bff839"}, + {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ba2b0bf01777c9b9bc94b53764d6684554ce98551fec496f71bc5be3a03e98b"}, + {file = "tokenizers-0.13.3-cp311-cp311-win32.whl", hash = "sha256:cc78d77f597d1c458bf0ea7c2a64b6aa06941c7a99cb135b5969b0278824d808"}, + {file = "tokenizers-0.13.3-cp311-cp311-win_amd64.whl", hash = "sha256:ecf182bf59bd541a8876deccf0360f5ae60496fd50b58510048020751cf1724c"}, + {file = "tokenizers-0.13.3-cp37-cp37m-macosx_10_11_x86_64.whl", hash = "sha256:0527dc5436a1f6bf2c0327da3145687d3bcfbeab91fed8458920093de3901b44"}, + {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07cbb2c307627dc99b44b22ef05ff4473aa7c7cc1fec8f0a8b37d8a64b1a16d2"}, + {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4560dbdeaae5b7ee0d4e493027e3de6d53c991b5002d7ff95083c99e11dd5ac0"}, + {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:64064bd0322405c9374305ab9b4c07152a1474370327499911937fd4a76d004b"}, + {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8c6e2ab0f2e3d939ca66aa1d596602105fe33b505cd2854a4c1717f704c51de"}, + {file = "tokenizers-0.13.3-cp37-cp37m-win32.whl", hash = "sha256:6cc29d410768f960db8677221e497226e545eaaea01aa3613fa0fdf2cc96cff4"}, + {file = "tokenizers-0.13.3-cp37-cp37m-win_amd64.whl", hash = "sha256:fc2a7fdf864554a0dacf09d32e17c0caa9afe72baf9dd7ddedc61973bae352d8"}, + {file = "tokenizers-0.13.3-cp38-cp38-macosx_10_11_x86_64.whl", hash = "sha256:8791dedba834c1fc55e5f1521be325ea3dafb381964be20684b92fdac95d79b7"}, + {file = "tokenizers-0.13.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:d607a6a13718aeb20507bdf2b96162ead5145bbbfa26788d6b833f98b31b26e1"}, + {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3791338f809cd1bf8e4fee6b540b36822434d0c6c6bc47162448deee3f77d425"}, + {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c2f35f30e39e6aab8716f07790f646bdc6e4a853816cc49a95ef2a9016bf9ce6"}, + {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:310204dfed5aa797128b65d63538a9837cbdd15da2a29a77d67eefa489edda26"}, + {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0f9b92ea052305166559f38498b3b0cae159caea712646648aaa272f7160963"}, + {file = "tokenizers-0.13.3-cp38-cp38-win32.whl", hash = "sha256:9a3fa134896c3c1f0da6e762d15141fbff30d094067c8f1157b9fdca593b5806"}, + {file = "tokenizers-0.13.3-cp38-cp38-win_amd64.whl", hash = "sha256:8e7b0cdeace87fa9e760e6a605e0ae8fc14b7d72e9fc19c578116f7287bb873d"}, + {file = "tokenizers-0.13.3-cp39-cp39-macosx_10_11_x86_64.whl", hash = "sha256:00cee1e0859d55507e693a48fa4aef07060c4bb6bd93d80120e18fea9371c66d"}, + {file = "tokenizers-0.13.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:a23ff602d0797cea1d0506ce69b27523b07e70f6dda982ab8cf82402de839088"}, + {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70ce07445050b537d2696022dafb115307abdffd2a5c106f029490f84501ef97"}, + {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:280ffe95f50eaaf655b3a1dc7ff1d9cf4777029dbbc3e63a74e65a056594abc3"}, + {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97acfcec592f7e9de8cadcdcda50a7134423ac8455c0166b28c9ff04d227b371"}, + {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd7730c98a3010cd4f523465867ff95cd9d6430db46676ce79358f65ae39797b"}, + {file = "tokenizers-0.13.3-cp39-cp39-win32.whl", hash = "sha256:48625a108029cb1ddf42e17a81b5a3230ba6888a70c9dc14e81bc319e812652d"}, + {file = "tokenizers-0.13.3-cp39-cp39-win_amd64.whl", hash = "sha256:bc0a6f1ba036e482db6453571c9e3e60ecd5489980ffd95d11dc9f960483d783"}, + {file = "tokenizers-0.13.3.tar.gz", hash = "sha256:2e546dbb68b623008a5442353137fbb0123d311a6d7ba52f2667c8862a75af2e"}, +] + +[package.extras] +dev = ["black (==22.3)", "datasets", "numpy", "pytest", "requests"] +docs = ["setuptools-rust", "sphinx", "sphinx-rtd-theme"] +testing = ["black (==22.3)", "datasets", "numpy", "pytest", "requests"] + +[[package]] +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] + +[[package]] +name = "tomlkit" +version = "0.12.1" +description = "Style preserving TOML library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomlkit-0.12.1-py3-none-any.whl", hash = "sha256:712cbd236609acc6a3e2e97253dfc52d4c2082982a88f61b640ecf0817eab899"}, + {file = "tomlkit-0.12.1.tar.gz", hash = "sha256:38e1ff8edb991273ec9f6181244a6a391ac30e9f5098e7535640ea6be97a7c86"}, +] + +[[package]] +name = "torch" +version = "2.1.0" +description = "Tensors and Dynamic neural networks in Python with strong GPU acceleration" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "torch-2.1.0-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:bf57f8184b2c317ef81fb33dc233ce4d850cd98ef3f4a38be59c7c1572d175db"}, + {file = "torch-2.1.0-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:a04a0296d47f28960f51c18c5489a8c3472f624ec3b5bcc8e2096314df8c3342"}, + {file = "torch-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:0bd691efea319b14ef239ede16d8a45c246916456fa3ed4f217d8af679433cc6"}, + {file = "torch-2.1.0-cp310-none-macosx_10_9_x86_64.whl", hash = "sha256:101c139152959cb20ab370fc192672c50093747906ee4ceace44d8dd703f29af"}, + {file = "torch-2.1.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:a6b7438a90a870e4cdeb15301519ae6c043c883fcd224d303c5b118082814767"}, + {file = "torch-2.1.0-cp311-cp311-manylinux1_x86_64.whl", hash = "sha256:2224622407ca52611cbc5b628106fde22ed8e679031f5a99ce286629fc696128"}, + {file = "torch-2.1.0-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:8132efb782cd181cc2dcca5e58effbe4217cdb2581206ac71466d535bf778867"}, + {file = "torch-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:5c3bfa91ce25ba10116c224c59d5b64cdcce07161321d978bd5a1f15e1ebce72"}, + {file = "torch-2.1.0-cp311-none-macosx_10_9_x86_64.whl", hash = "sha256:601b0a2a9d9233fb4b81f7d47dca9680d4f3a78ca3f781078b6ad1ced8a90523"}, + {file = "torch-2.1.0-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:3cd1dedff13884d890f18eea620184fb4cd8fd3c68ce3300498f427ae93aa962"}, + {file = "torch-2.1.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:fb7bf0cc1a3db484eb5d713942a93172f3bac026fcb377a0cd107093d2eba777"}, + {file = "torch-2.1.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:761822761fffaa1c18a62c5deb13abaa780862577d3eadc428f1daa632536905"}, + {file = "torch-2.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:458a6d6d8f7d2ccc348ac4d62ea661b39a3592ad15be385bebd0a31ced7e00f4"}, + {file = "torch-2.1.0-cp38-none-macosx_10_9_x86_64.whl", hash = "sha256:c8bf7eaf9514465e5d9101e05195183470a6215bb50295c61b52302a04edb690"}, + {file = "torch-2.1.0-cp38-none-macosx_11_0_arm64.whl", hash = "sha256:05661c32ec14bc3a157193d0f19a7b19d8e61eb787b33353cad30202c295e83b"}, + {file = "torch-2.1.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:556d8dd3e0c290ed9d4d7de598a213fb9f7c59135b4fee144364a8a887016a55"}, + {file = "torch-2.1.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:de7d63c6ecece118684415a3dbd4805af4a4c1ee1490cccf7405d8c240a481b4"}, + {file = "torch-2.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:2419cf49aaf3b2336c7aa7a54a1b949fa295b1ae36f77e2aecb3a74e3a947255"}, + {file = "torch-2.1.0-cp39-none-macosx_10_9_x86_64.whl", hash = "sha256:6ad491e70dbe4288d17fdbfc7fbfa766d66cbe219bc4871c7a8096f4a37c98df"}, + {file = "torch-2.1.0-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:421739685eba5e0beba42cb649740b15d44b0d565c04e6ed667b41148734a75b"}, +] + +[package.dependencies] +filelock = "*" +fsspec = "*" +jinja2 = "*" +networkx = "*" +sympy = "*" +typing-extensions = "*" + +[package.extras] +opt-einsum = ["opt-einsum (>=3.3)"] + +[[package]] +name = "torchvision" +version = "0.16.0" +description = "image and video datasets and models for torch deep learning" +optional = false +python-versions = ">=3.8" +files = [ + {file = "torchvision-0.16.0-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:16c300fdbbe91469f5e9feef8d24c6acabd8849db502a06160dd76ba68e897a0"}, + {file = "torchvision-0.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ef5dec6c48b715353781b83749efcdea03835720a71b377684453ee117aab3c7"}, + {file = "torchvision-0.16.0-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:9e3a2012e463f498de21f6598cc7a266b9a8c6fe15788472fdc419233ea6f3f2"}, + {file = "torchvision-0.16.0-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:e4327e082b703921ae52caeee4f7839f7e6c73cfc5eedea468ecb5c1487ecdbf"}, + {file = "torchvision-0.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:62f01513687cce3480df8928fcc6c09b4aa0433d05ac75e82877acc773f6a568"}, + {file = "torchvision-0.16.0-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:31fdf289bdfb2976f65a14f79f6ddd1ee60113db34622674918e61521c2dc41f"}, + {file = "torchvision-0.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2294a6514a31a6fda562288b28cf6db57877237f4b56ff693262f237a7ed4035"}, + {file = "torchvision-0.16.0-cp311-cp311-manylinux1_x86_64.whl", hash = "sha256:6a24a1e83e4bc7a31b39ef05d2ca4cd2182e95ff10f525edffe1473f7ce16ca1"}, + {file = "torchvision-0.16.0-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:9ed5f21e5a56e466667c6f9f6f93dba2a75e29921108bd70043eaf8e9ba0a7cc"}, + {file = "torchvision-0.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:9ee3d4df7d4a84f883f8ad11fb6510549f40f68dd5469eae601d7e02fb4809b2"}, + {file = "torchvision-0.16.0-cp38-cp38-macosx_10_13_x86_64.whl", hash = "sha256:0c6f36d00b9ce412e367ad6f42e9054cbc890cd9ddd0d200ed9b3b52dd9c225b"}, + {file = "torchvision-0.16.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:597f60cb03e6f758a00b36b38506f6f38b6c3f1fdfd3921bb9abd60b72d522fd"}, + {file = "torchvision-0.16.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:eddd91da4603f1dbb340d9aca82344df64605a0897b17014ac8e0b54dd6e5716"}, + {file = "torchvision-0.16.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:79875f5247337723ec363762c2716bcfc13b78b3045e4e58847c696f03d9ed4d"}, + {file = "torchvision-0.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:550c9793637c5369fbcb4e4b6b0e6d53a4f6cc22389f0563ad60ab90e4f1c8ba"}, + {file = "torchvision-0.16.0-cp39-cp39-macosx_10_13_x86_64.whl", hash = "sha256:de7c7302fa2f67a2a151e595a8e7dc3865a445d952e99d5c682ba78f312fedc3"}, + {file = "torchvision-0.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f044cffd252fd293b6df46f38d7eeb2fd4fe931e0114c5263735e3b8c9c60a4f"}, + {file = "torchvision-0.16.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:8cb501061f6654da494dd975acc1fa301c4b8aacf96bdbcf1553f51a53ebfd1f"}, + {file = "torchvision-0.16.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:5a47108ae6a8effdf09fe35fd0c4d5414e69ca8d2334e87339de497b7b64b0c9"}, + {file = "torchvision-0.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:9b8f06e6a2f80576007b88846f74b680a1ad3b59d2e22b075587b430180e9cfa"}, +] + +[package.dependencies] +numpy = "*" +pillow = ">=5.3.0,<8.3.dev0 || >=8.4.dev0" +requests = "*" +torch = "2.1.0" + +[package.extras] +scipy = ["scipy"] + +[[package]] +name = "tqdm" +version = "4.66.1" +description = "Fast, Extensible Progress Meter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tqdm-4.66.1-py3-none-any.whl", hash = "sha256:d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386"}, + {file = "tqdm-4.66.1.tar.gz", hash = "sha256:d88e651f9db8d8551a62556d3cff9e3034274ca5d66e93197cf2490e2dcb69c7"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[package.extras] +dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] +notebook = ["ipywidgets (>=6)"] +slack = ["slack-sdk"] +telegram = ["requests"] + +[[package]] +name = "transformers" +version = "4.32.1" +description = "State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "transformers-4.32.1-py3-none-any.whl", hash = "sha256:b930d3dbd907a3f300cf49e54d63a56f8a0ab16b01a2c2a61ecff37c6de1da08"}, + {file = "transformers-4.32.1.tar.gz", hash = "sha256:1edc8ae1de357d97c3d36b04412aa63d55e6fc0c4b39b419a7d380ed947d2252"}, +] + +[package.dependencies] +filelock = "*" +huggingface-hub = ">=0.15.1,<1.0" +numpy = ">=1.17" +packaging = ">=20.0" +pyyaml = ">=5.1" +regex = "!=2019.12.17" +requests = "*" +safetensors = ">=0.3.1" +tokenizers = ">=0.11.1,<0.11.3 || >0.11.3,<0.14" +tqdm = ">=4.27" + +[package.extras] +accelerate = ["accelerate (>=0.20.3)"] +agents = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "datasets (!=2.5.0)", "diffusers", "opencv-python", "sentencepiece (>=0.1.91,!=0.1.92)", "torch (>=1.9,!=1.12.0)"] +all = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "codecarbon (==1.2.0)", "decord (==0.6.0)", "flax (>=0.4.1,<=0.7.0)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "phonemizer", "protobuf", "pyctcdecode (>=0.4.0)", "ray[tune]", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "tensorflow (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.9,!=1.12.0)", "torchaudio", "torchvision"] +audio = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] +codecarbon = ["codecarbon (==1.2.0)"] +deepspeed = ["accelerate (>=0.20.3)", "deepspeed (>=0.9.3)"] +deepspeed-testing = ["GitPython (<3.1.19)", "accelerate (>=0.20.3)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "deepspeed (>=0.9.3)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder (>=0.3.0)", "nltk", "optuna", "parameterized", "protobuf", "psutil", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "sentencepiece (>=0.1.91,!=0.1.92)", "timeout-decorator"] +dev = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "beautifulsoup4", "black (>=23.1,<24.0)", "codecarbon (==1.2.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "decord (==0.6.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "flax (>=0.4.1,<=0.7.0)", "fugashi (>=1.0)", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "ipadic (>=1.0.0,<2.0)", "isort (>=5.5.4)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "nltk", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "ray[tune]", "rhoknp (>=1.1.0,<1.3.1)", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "tensorflow (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx", "timeout-decorator", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.9,!=1.12.0)", "torchaudio", "torchvision", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)", "urllib3 (<2.0.0)"] +dev-tensorflow = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "isort (>=5.5.4)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "nltk", "onnxconverter-common", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "tensorflow (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx", "timeout-decorator", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "urllib3 (<2.0.0)"] +dev-torch = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "accelerate (>=0.20.3)", "beautifulsoup4", "black (>=23.1,<24.0)", "codecarbon (==1.2.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "fugashi (>=1.0)", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "ipadic (>=1.0.0,<2.0)", "isort (>=5.5.4)", "kenlm", "librosa", "nltk", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "optuna", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "ray[tune]", "rhoknp (>=1.1.0,<1.3.1)", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "timeout-decorator", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.9,!=1.12.0)", "torchaudio", "torchvision", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)", "urllib3 (<2.0.0)"] +docs = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "codecarbon (==1.2.0)", "decord (==0.6.0)", "flax (>=0.4.1,<=0.7.0)", "hf-doc-builder", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "phonemizer", "protobuf", "pyctcdecode (>=0.4.0)", "ray[tune]", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "tensorflow (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.9,!=1.12.0)", "torchaudio", "torchvision"] +docs-specific = ["hf-doc-builder"] +fairscale = ["fairscale (>0.3)"] +flax = ["flax (>=0.4.1,<=0.7.0)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "optax (>=0.0.8,<=0.1.4)"] +flax-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] +ftfy = ["ftfy"] +integrations = ["optuna", "ray[tune]", "sigopt"] +ja = ["fugashi (>=1.0)", "ipadic (>=1.0.0,<2.0)", "rhoknp (>=1.1.0,<1.3.1)", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)"] +modelcreation = ["cookiecutter (==1.7.3)"] +natten = ["natten (>=0.14.6)"] +onnx = ["onnxconverter-common", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "tf2onnx"] +onnxruntime = ["onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)"] +optuna = ["optuna"] +quality = ["GitPython (<3.1.19)", "black (>=23.1,<24.0)", "datasets (!=2.5.0)", "hf-doc-builder (>=0.3.0)", "isort (>=5.5.4)", "ruff (>=0.0.241,<=0.0.259)", "urllib3 (<2.0.0)"] +ray = ["ray[tune]"] +retrieval = ["datasets (!=2.5.0)", "faiss-cpu"] +sagemaker = ["sagemaker (>=2.31.0)"] +sentencepiece = ["protobuf", "sentencepiece (>=0.1.91,!=0.1.92)"] +serving = ["fastapi", "pydantic (<2)", "starlette", "uvicorn"] +sigopt = ["sigopt"] +sklearn = ["scikit-learn"] +speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)", "torchaudio"] +testing = ["GitPython (<3.1.19)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder (>=0.3.0)", "nltk", "parameterized", "protobuf", "psutil", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "timeout-decorator"] +tf = ["keras-nlp (>=0.3.1)", "onnxconverter-common", "tensorflow (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx"] +tf-cpu = ["keras-nlp (>=0.3.1)", "onnxconverter-common", "tensorflow-cpu (>=2.6,<2.14)", "tensorflow-text (<2.14)", "tf2onnx"] +tf-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] +timm = ["timm"] +tokenizers = ["tokenizers (>=0.11.1,!=0.11.3,<0.14)"] +torch = ["accelerate (>=0.20.3)", "torch (>=1.9,!=1.12.0)"] +torch-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)", "torchaudio"] +torch-vision = ["Pillow (<10.0.0)", "torchvision"] +torchhub = ["filelock", "huggingface-hub (>=0.15.1,<1.0)", "importlib-metadata", "numpy (>=1.17)", "packaging (>=20.0)", "protobuf", "regex (!=2019.12.17)", "requests", "sentencepiece (>=0.1.91,!=0.1.92)", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.9,!=1.12.0)", "tqdm (>=4.27)"] +video = ["av (==9.2.0)", "decord (==0.6.0)"] +vision = ["Pillow (<10.0.0)"] + +[[package]] +name = "typing-extensions" +version = "4.8.0" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ + {file = "typing_extensions-4.8.0-py3-none-any.whl", hash = "sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0"}, + {file = "typing_extensions-4.8.0.tar.gz", hash = "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef"}, +] + +[[package]] +name = "typing-inspect" +version = "0.9.0" +description = "Runtime inspection utilities for typing module." +optional = false +python-versions = "*" +files = [ + {file = "typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f"}, + {file = "typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"}, +] + +[package.dependencies] +mypy-extensions = ">=0.3.0" +typing-extensions = ">=3.7.4" + +[[package]] +name = "tzdata" +version = "2023.3" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2023.3-py2.py3-none-any.whl", hash = "sha256:7e65763eef3120314099b6939b5546db7adce1e7d6f2e179e3df563c70511eda"}, + {file = "tzdata-2023.3.tar.gz", hash = "sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a"}, +] + +[[package]] +name = "uptrace" +version = "1.20.2" +description = "OpenTelemetry Python distribution for Uptrace" +optional = false +python-versions = ">=3.7" +files = [ + {file = "uptrace-1.20.2-py3-none-any.whl", hash = "sha256:e2f9d0d95ddda4fbccca94dd2c6f066874e1d974cb8bd73d716a9b4bc638f52d"}, + {file = "uptrace-1.20.2.tar.gz", hash = "sha256:60f4ef2b22d7d1c9c33f3d9e1138c911e48405412c9a577bf3b39e5dda407c37"}, +] + +[package.dependencies] +opentelemetry-api = ">=1.20,<2.0" +opentelemetry-exporter-otlp = ">=1.20,<2.0" +opentelemetry-instrumentation = ">=0.41b0,<1.0" +opentelemetry-sdk = ">=1.20,<2.0" + +[[package]] +name = "url-normalize" +version = "1.4.3" +description = "URL normalization for Python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "url-normalize-1.4.3.tar.gz", hash = "sha256:d23d3a070ac52a67b83a1c59a0e68f8608d1cd538783b401bc9de2c0fac999b2"}, + {file = "url_normalize-1.4.3-py2.py3-none-any.whl", hash = "sha256:ec3c301f04e5bb676d333a7fa162fa977ad2ca04b7e652bfc9fac4e405728eed"}, +] + +[package.dependencies] +six = "*" + +[[package]] +name = "urllib3" +version = "2.0.7" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.7" +files = [ + {file = "urllib3-2.0.7-py3-none-any.whl", hash = "sha256:fdb6d215c776278489906c2f8916e6e7d4f5a9b602ccbcfdf7f016fc8da0596e"}, + {file = "urllib3-2.0.7.tar.gz", hash = "sha256:c97dfde1f7bd43a71c8d2a58e369e9b2bf692d1334ea9f9cae55add7d0dd0f84"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +secure = ["certifi", "cryptography (>=1.9)", "idna (>=2.0.0)", "pyopenssl (>=17.1.0)", "urllib3-secure-extra"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "uvicorn" +version = "0.23.2" +description = "The lightning-fast ASGI server." +optional = false +python-versions = ">=3.8" +files = [ + {file = "uvicorn-0.23.2-py3-none-any.whl", hash = "sha256:1f9be6558f01239d4fdf22ef8126c39cb1ad0addf76c40e760549d2c2f43ab53"}, + {file = "uvicorn-0.23.2.tar.gz", hash = "sha256:4d3cc12d7727ba72b64d12d3cc7743124074c0a69f7b201512fc50c3e3f1569a"}, +] + +[package.dependencies] +click = ">=7.0" +h11 = ">=0.8" +typing-extensions = {version = ">=4.0", markers = "python_version < \"3.11\""} + +[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 = "watchfiles" +version = "0.20.0" +description = "Simple, modern and high performance file watching and code reload in python." +optional = false +python-versions = ">=3.7" +files = [ + {file = "watchfiles-0.20.0-cp37-abi3-macosx_10_7_x86_64.whl", hash = "sha256:3796312bd3587e14926013612b23066912cf45a14af71cf2b20db1c12dadf4e9"}, + {file = "watchfiles-0.20.0-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:d0002d81c89a662b595645fb684a371b98ff90a9c7d8f8630c82f0fde8310458"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:570848706440373b4cd8017f3e850ae17f76dbdf1e9045fc79023b11e1afe490"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a0351d20d03c6f7ad6b2e8a226a5efafb924c7755ee1e34f04c77c3682417fa"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:007dcc4a401093010b389c044e81172c8a2520dba257c88f8828b3d460c6bb38"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0d82dbc1832da83e441d112069833eedd4cf583d983fb8dd666fbefbea9d99c0"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:99f4c65fd2fce61a571b2a6fcf747d6868db0bef8a934e8ca235cc8533944d95"}, + {file = "watchfiles-0.20.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5392dd327a05f538c56edb1c6ebba6af91afc81b40822452342f6da54907bbdf"}, + {file = "watchfiles-0.20.0-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:08dc702529bb06a2b23859110c214db245455532da5eaea602921687cfcd23db"}, + {file = "watchfiles-0.20.0-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:7d4e66a857621584869cfbad87039e65dadd7119f0d9bb9dbc957e089e32c164"}, + {file = "watchfiles-0.20.0-cp37-abi3-win32.whl", hash = "sha256:a03d1e6feb7966b417f43c3e3783188167fd69c2063e86bad31e62c4ea794cc5"}, + {file = "watchfiles-0.20.0-cp37-abi3-win_amd64.whl", hash = "sha256:eccc8942bcdc7d638a01435d915b913255bbd66f018f1af051cd8afddb339ea3"}, + {file = "watchfiles-0.20.0-cp37-abi3-win_arm64.whl", hash = "sha256:b17d4176c49d207865630da5b59a91779468dd3e08692fe943064da260de2c7c"}, + {file = "watchfiles-0.20.0-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:d97db179f7566dcf145c5179ddb2ae2a4450e3a634eb864b09ea04e68c252e8e"}, + {file = "watchfiles-0.20.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:835df2da7a5df5464c4a23b2d963e1a9d35afa422c83bf4ff4380b3114603644"}, + {file = "watchfiles-0.20.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:608cd94a8767f49521901aff9ae0c92cc8f5a24d528db7d6b0295290f9d41193"}, + {file = "watchfiles-0.20.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89d1de8218874925bce7bb2ae9657efc504411528930d7a83f98b1749864f2ef"}, + {file = "watchfiles-0.20.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:13f995d5152a8ba4ed7c2bbbaeee4e11a5944defc7cacd0ccb4dcbdcfd78029a"}, + {file = "watchfiles-0.20.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:9b5c8d3be7b502f8c43a33c63166ada8828dbb0c6d49c8f9ce990a96de2f5a49"}, + {file = "watchfiles-0.20.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e43af4464daa08723c04b43cf978ab86cc55c684c16172622bdac64b34e36af0"}, + {file = "watchfiles-0.20.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87d9e1f75c4f86c93d73b5bd1ebe667558357548f11b4f8af4e0e272f79413ce"}, + {file = "watchfiles-0.20.0.tar.gz", hash = "sha256:728575b6b94c90dd531514677201e8851708e6e4b5fe7028ac506a200b622019"}, +] + +[package.dependencies] +anyio = ">=3.0.0" + +[[package]] +name = "websockets" +version = "12.0" +description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "websockets-12.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d554236b2a2006e0ce16315c16eaa0d628dab009c33b63ea03f41c6107958374"}, + {file = "websockets-12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2d225bb6886591b1746b17c0573e29804619c8f755b5598d875bb4235ea639be"}, + {file = "websockets-12.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:eb809e816916a3b210bed3c82fb88eaf16e8afcf9c115ebb2bacede1797d2547"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c588f6abc13f78a67044c6b1273a99e1cf31038ad51815b3b016ce699f0d75c2"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aa9348186d79a5f232115ed3fa9020eab66d6c3437d72f9d2c8ac0c6858c558"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6350b14a40c95ddd53e775dbdbbbc59b124a5c8ecd6fbb09c2e52029f7a9f480"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:70ec754cc2a769bcd218ed8d7209055667b30860ffecb8633a834dde27d6307c"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6e96f5ed1b83a8ddb07909b45bd94833b0710f738115751cdaa9da1fb0cb66e8"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4d87be612cbef86f994178d5186add3d94e9f31cc3cb499a0482b866ec477603"}, + {file = "websockets-12.0-cp310-cp310-win32.whl", hash = "sha256:befe90632d66caaf72e8b2ed4d7f02b348913813c8b0a32fae1cc5fe3730902f"}, + {file = "websockets-12.0-cp310-cp310-win_amd64.whl", hash = "sha256:363f57ca8bc8576195d0540c648aa58ac18cf85b76ad5202b9f976918f4219cf"}, + {file = "websockets-12.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5d873c7de42dea355d73f170be0f23788cf3fa9f7bed718fd2830eefedce01b4"}, + {file = "websockets-12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3f61726cae9f65b872502ff3c1496abc93ffbe31b278455c418492016e2afc8f"}, + {file = "websockets-12.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ed2fcf7a07334c77fc8a230755c2209223a7cc44fc27597729b8ef5425aa61a3"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e332c210b14b57904869ca9f9bf4ca32f5427a03eeb625da9b616c85a3a506c"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5693ef74233122f8ebab026817b1b37fe25c411ecfca084b29bc7d6efc548f45"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e9e7db18b4539a29cc5ad8c8b252738a30e2b13f033c2d6e9d0549b45841c04"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6e2df67b8014767d0f785baa98393725739287684b9f8d8a1001eb2839031447"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bea88d71630c5900690fcb03161ab18f8f244805c59e2e0dc4ffadae0a7ee0ca"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dff6cdf35e31d1315790149fee351f9e52978130cef6c87c4b6c9b3baf78bc53"}, + {file = "websockets-12.0-cp311-cp311-win32.whl", hash = "sha256:3e3aa8c468af01d70332a382350ee95f6986db479ce7af14d5e81ec52aa2b402"}, + {file = "websockets-12.0-cp311-cp311-win_amd64.whl", hash = "sha256:25eb766c8ad27da0f79420b2af4b85d29914ba0edf69f547cc4f06ca6f1d403b"}, + {file = "websockets-12.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0e6e2711d5a8e6e482cacb927a49a3d432345dfe7dea8ace7b5790df5932e4df"}, + {file = "websockets-12.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:dbcf72a37f0b3316e993e13ecf32f10c0e1259c28ffd0a85cee26e8549595fbc"}, + {file = "websockets-12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12743ab88ab2af1d17dd4acb4645677cb7063ef4db93abffbf164218a5d54c6b"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b645f491f3c48d3f8a00d1fce07445fab7347fec54a3e65f0725d730d5b99cb"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9893d1aa45a7f8b3bc4510f6ccf8db8c3b62120917af15e3de247f0780294b92"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f38a7b376117ef7aff996e737583172bdf535932c9ca021746573bce40165ed"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:f764ba54e33daf20e167915edc443b6f88956f37fb606449b4a5b10ba42235a5"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:1e4b3f8ea6a9cfa8be8484c9221ec0257508e3a1ec43c36acdefb2a9c3b00aa2"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9fdf06fd06c32205a07e47328ab49c40fc1407cdec801d698a7c41167ea45113"}, + {file = "websockets-12.0-cp312-cp312-win32.whl", hash = "sha256:baa386875b70cbd81798fa9f71be689c1bf484f65fd6fb08d051a0ee4e79924d"}, + {file = "websockets-12.0-cp312-cp312-win_amd64.whl", hash = "sha256:ae0a5da8f35a5be197f328d4727dbcfafa53d1824fac3d96cdd3a642fe09394f"}, + {file = "websockets-12.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5f6ffe2c6598f7f7207eef9a1228b6f5c818f9f4d53ee920aacd35cec8110438"}, + {file = "websockets-12.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9edf3fc590cc2ec20dc9d7a45108b5bbaf21c0d89f9fd3fd1685e223771dc0b2"}, + {file = "websockets-12.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8572132c7be52632201a35f5e08348137f658e5ffd21f51f94572ca6c05ea81d"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:604428d1b87edbf02b233e2c207d7d528460fa978f9e391bd8aaf9c8311de137"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1a9d160fd080c6285e202327aba140fc9a0d910b09e423afff4ae5cbbf1c7205"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87b4aafed34653e465eb77b7c93ef058516cb5acf3eb21e42f33928616172def"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b2ee7288b85959797970114deae81ab41b731f19ebcd3bd499ae9ca0e3f1d2c8"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:7fa3d25e81bfe6a89718e9791128398a50dec6d57faf23770787ff441d851967"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a571f035a47212288e3b3519944f6bf4ac7bc7553243e41eac50dd48552b6df7"}, + {file = "websockets-12.0-cp38-cp38-win32.whl", hash = "sha256:3c6cc1360c10c17463aadd29dd3af332d4a1adaa8796f6b0e9f9df1fdb0bad62"}, + {file = "websockets-12.0-cp38-cp38-win_amd64.whl", hash = "sha256:1bf386089178ea69d720f8db6199a0504a406209a0fc23e603b27b300fdd6892"}, + {file = "websockets-12.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ab3d732ad50a4fbd04a4490ef08acd0517b6ae6b77eb967251f4c263011a990d"}, + {file = "websockets-12.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a1d9697f3337a89691e3bd8dc56dea45a6f6d975f92e7d5f773bc715c15dde28"}, + {file = "websockets-12.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1df2fbd2c8a98d38a66f5238484405b8d1d16f929bb7a33ed73e4801222a6f53"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23509452b3bc38e3a057382c2e941d5ac2e01e251acce7adc74011d7d8de434c"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e5fc14ec6ea568200ea4ef46545073da81900a2b67b3e666f04adf53ad452ec"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46e71dbbd12850224243f5d2aeec90f0aaa0f2dde5aeeb8fc8df21e04d99eff9"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b81f90dcc6c85a9b7f29873beb56c94c85d6f0dac2ea8b60d995bd18bf3e2aae"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a02413bc474feda2849c59ed2dfb2cddb4cd3d2f03a2fedec51d6e959d9b608b"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bbe6013f9f791944ed31ca08b077e26249309639313fff132bfbf3ba105673b9"}, + {file = "websockets-12.0-cp39-cp39-win32.whl", hash = "sha256:cbe83a6bbdf207ff0541de01e11904827540aa069293696dd528a6640bd6a5f6"}, + {file = "websockets-12.0-cp39-cp39-win_amd64.whl", hash = "sha256:fc4e7fa5414512b481a2483775a8e8be7803a35b30ca805afa4998a84f9fd9e8"}, + {file = "websockets-12.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:248d8e2446e13c1d4326e0a6a4e9629cb13a11195051a73acf414812700badbd"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f44069528d45a933997a6fef143030d8ca8042f0dfaad753e2906398290e2870"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c4e37d36f0d19f0a4413d3e18c0d03d0c268ada2061868c1e6f5ab1a6d575077"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d829f975fc2e527a3ef2f9c8f25e553eb7bc779c6665e8e1d52aa22800bb38b"}, + {file = "websockets-12.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:2c71bd45a777433dd9113847af751aae36e448bc6b8c361a566cb043eda6ec30"}, + {file = "websockets-12.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0bee75f400895aef54157b36ed6d3b308fcab62e5260703add87f44cee9c82a6"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:423fc1ed29f7512fceb727e2d2aecb952c46aa34895e9ed96071821309951123"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27a5e9964ef509016759f2ef3f2c1e13f403725a5e6a1775555994966a66e931"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3181df4583c4d3994d31fb235dc681d2aaad744fbdbf94c4802485ececdecf2"}, + {file = "websockets-12.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:b067cb952ce8bf40115f6c19f478dc71c5e719b7fbaa511359795dfd9d1a6468"}, + {file = "websockets-12.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:00700340c6c7ab788f176d118775202aadea7602c5cc6be6ae127761c16d6b0b"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e469d01137942849cff40517c97a30a93ae79917752b34029f0ec72df6b46399"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffefa1374cd508d633646d51a8e9277763a9b78ae71324183693959cf94635a7"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba0cab91b3956dfa9f512147860783a1829a8d905ee218a9837c18f683239611"}, + {file = "websockets-12.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2cb388a5bfb56df4d9a406783b7f9dbefb888c09b71629351cc6b036e9259370"}, + {file = "websockets-12.0-py3-none-any.whl", hash = "sha256:dc284bbc8d7c78a6c69e0c7325ab46ee5e40bb4d50e494d8131a07ef47500e9e"}, + {file = "websockets-12.0.tar.gz", hash = "sha256:81df9cbcbb6c260de1e007e58c011bfebe2dafc8435107b0537f393dd38c8b1b"}, +] + +[[package]] +name = "win32-setctime" +version = "1.1.0" +description = "A small Python utility to set file creation time on Windows" +optional = false +python-versions = ">=3.5" +files = [ + {file = "win32_setctime-1.1.0-py3-none-any.whl", hash = "sha256:231db239e959c2fe7eb1d7dc129f11172354f98361c4fa2d6d2d7e278baa8aad"}, + {file = "win32_setctime-1.1.0.tar.gz", hash = "sha256:15cf5750465118d6929ae4de4eb46e8edae9a5634350c01ba582df868e932cb2"}, +] + +[package.extras] +dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] + +[[package]] +name = "wrapt" +version = "1.15.0" +description = "Module for decorators, wrappers and monkey patching." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "wrapt-1.15.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:ca1cccf838cd28d5a0883b342474c630ac48cac5df0ee6eacc9c7290f76b11c1"}, + {file = "wrapt-1.15.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:e826aadda3cae59295b95343db8f3d965fb31059da7de01ee8d1c40a60398b29"}, + {file = "wrapt-1.15.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:5fc8e02f5984a55d2c653f5fea93531e9836abbd84342c1d1e17abc4a15084c2"}, + {file = "wrapt-1.15.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:96e25c8603a155559231c19c0349245eeb4ac0096fe3c1d0be5c47e075bd4f46"}, + {file = "wrapt-1.15.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:40737a081d7497efea35ab9304b829b857f21558acfc7b3272f908d33b0d9d4c"}, + {file = "wrapt-1.15.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:f87ec75864c37c4c6cb908d282e1969e79763e0d9becdfe9fe5473b7bb1e5f09"}, + {file = "wrapt-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:1286eb30261894e4c70d124d44b7fd07825340869945c79d05bda53a40caa079"}, + {file = "wrapt-1.15.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:493d389a2b63c88ad56cdc35d0fa5752daac56ca755805b1b0c530f785767d5e"}, + {file = "wrapt-1.15.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:58d7a75d731e8c63614222bcb21dd992b4ab01a399f1f09dd82af17bbfc2368a"}, + {file = "wrapt-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:21f6d9a0d5b3a207cdf7acf8e58d7d13d463e639f0c7e01d82cdb671e6cb7923"}, + {file = "wrapt-1.15.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce42618f67741d4697684e501ef02f29e758a123aa2d669e2d964ff734ee00ee"}, + {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41d07d029dd4157ae27beab04d22b8e261eddfc6ecd64ff7000b10dc8b3a5727"}, + {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54accd4b8bc202966bafafd16e69da9d5640ff92389d33d28555c5fd4f25ccb7"}, + {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fbfbca668dd15b744418265a9607baa970c347eefd0db6a518aaf0cfbd153c0"}, + {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:76e9c727a874b4856d11a32fb0b389afc61ce8aaf281ada613713ddeadd1cfec"}, + {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e20076a211cd6f9b44a6be58f7eeafa7ab5720eb796975d0c03f05b47d89eb90"}, + {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a74d56552ddbde46c246b5b89199cb3fd182f9c346c784e1a93e4dc3f5ec9975"}, + {file = "wrapt-1.15.0-cp310-cp310-win32.whl", hash = "sha256:26458da5653aa5b3d8dc8b24192f574a58984c749401f98fff994d41d3f08da1"}, + {file = "wrapt-1.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:75760a47c06b5974aa5e01949bf7e66d2af4d08cb8c1d6516af5e39595397f5e"}, + {file = "wrapt-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ba1711cda2d30634a7e452fc79eabcadaffedf241ff206db2ee93dd2c89a60e7"}, + {file = "wrapt-1.15.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:56374914b132c702aa9aa9959c550004b8847148f95e1b824772d453ac204a72"}, + {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a89ce3fd220ff144bd9d54da333ec0de0399b52c9ac3d2ce34b569cf1a5748fb"}, + {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3bbe623731d03b186b3d6b0d6f51865bf598587c38d6f7b0be2e27414f7f214e"}, + {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3abbe948c3cbde2689370a262a8d04e32ec2dd4f27103669a45c6929bcdbfe7c"}, + {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b67b819628e3b748fd3c2192c15fb951f549d0f47c0449af0764d7647302fda3"}, + {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7eebcdbe3677e58dd4c0e03b4f2cfa346ed4049687d839adad68cc38bb559c92"}, + {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:74934ebd71950e3db69960a7da29204f89624dde411afbfb3b4858c1409b1e98"}, + {file = "wrapt-1.15.0-cp311-cp311-win32.whl", hash = "sha256:bd84395aab8e4d36263cd1b9308cd504f6cf713b7d6d3ce25ea55670baec5416"}, + {file = "wrapt-1.15.0-cp311-cp311-win_amd64.whl", hash = "sha256:a487f72a25904e2b4bbc0817ce7a8de94363bd7e79890510174da9d901c38705"}, + {file = "wrapt-1.15.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:4ff0d20f2e670800d3ed2b220d40984162089a6e2c9646fdb09b85e6f9a8fc29"}, + {file = "wrapt-1.15.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:9ed6aa0726b9b60911f4aed8ec5b8dd7bf3491476015819f56473ffaef8959bd"}, + {file = "wrapt-1.15.0-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:896689fddba4f23ef7c718279e42f8834041a21342d95e56922e1c10c0cc7afb"}, + {file = "wrapt-1.15.0-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:75669d77bb2c071333417617a235324a1618dba66f82a750362eccbe5b61d248"}, + {file = "wrapt-1.15.0-cp35-cp35m-win32.whl", hash = "sha256:fbec11614dba0424ca72f4e8ba3c420dba07b4a7c206c8c8e4e73f2e98f4c559"}, + {file = "wrapt-1.15.0-cp35-cp35m-win_amd64.whl", hash = "sha256:fd69666217b62fa5d7c6aa88e507493a34dec4fa20c5bd925e4bc12fce586639"}, + {file = "wrapt-1.15.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b0724f05c396b0a4c36a3226c31648385deb6a65d8992644c12a4963c70326ba"}, + {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bbeccb1aa40ab88cd29e6c7d8585582c99548f55f9b2581dfc5ba68c59a85752"}, + {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:38adf7198f8f154502883242f9fe7333ab05a5b02de7d83aa2d88ea621f13364"}, + {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:578383d740457fa790fdf85e6d346fda1416a40549fe8db08e5e9bd281c6a475"}, + {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:a4cbb9ff5795cd66f0066bdf5947f170f5d63a9274f99bdbca02fd973adcf2a8"}, + {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:af5bd9ccb188f6a5fdda9f1f09d9f4c86cc8a539bd48a0bfdc97723970348418"}, + {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:b56d5519e470d3f2fe4aa7585f0632b060d532d0696c5bdfb5e8319e1d0f69a2"}, + {file = "wrapt-1.15.0-cp36-cp36m-win32.whl", hash = "sha256:77d4c1b881076c3ba173484dfa53d3582c1c8ff1f914c6461ab70c8428b796c1"}, + {file = "wrapt-1.15.0-cp36-cp36m-win_amd64.whl", hash = "sha256:077ff0d1f9d9e4ce6476c1a924a3332452c1406e59d90a2cf24aeb29eeac9420"}, + {file = "wrapt-1.15.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5c5aa28df055697d7c37d2099a7bc09f559d5053c3349b1ad0c39000e611d317"}, + {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a8564f283394634a7a7054b7983e47dbf39c07712d7b177b37e03f2467a024e"}, + {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780c82a41dc493b62fc5884fb1d3a3b81106642c5c5c78d6a0d4cbe96d62ba7e"}, + {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e169e957c33576f47e21864cf3fc9ff47c223a4ebca8960079b8bd36cb014fd0"}, + {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b02f21c1e2074943312d03d243ac4388319f2456576b2c6023041c4d57cd7019"}, + {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f2e69b3ed24544b0d3dbe2c5c0ba5153ce50dcebb576fdc4696d52aa22db6034"}, + {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d787272ed958a05b2c86311d3a4135d3c2aeea4fc655705f074130aa57d71653"}, + {file = "wrapt-1.15.0-cp37-cp37m-win32.whl", hash = "sha256:02fce1852f755f44f95af51f69d22e45080102e9d00258053b79367d07af39c0"}, + {file = "wrapt-1.15.0-cp37-cp37m-win_amd64.whl", hash = "sha256:abd52a09d03adf9c763d706df707c343293d5d106aea53483e0ec8d9e310ad5e"}, + {file = "wrapt-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cdb4f085756c96a3af04e6eca7f08b1345e94b53af8921b25c72f096e704e145"}, + {file = "wrapt-1.15.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:230ae493696a371f1dbffaad3dafbb742a4d27a0afd2b1aecebe52b740167e7f"}, + {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63424c681923b9f3bfbc5e3205aafe790904053d42ddcc08542181a30a7a51bd"}, + {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6bcbfc99f55655c3d93feb7ef3800bd5bbe963a755687cbf1f490a71fb7794b"}, + {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c99f4309f5145b93eca6e35ac1a988f0dc0a7ccf9ccdcd78d3c0adf57224e62f"}, + {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b130fe77361d6771ecf5a219d8e0817d61b236b7d8b37cc045172e574ed219e6"}, + {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:96177eb5645b1c6985f5c11d03fc2dbda9ad24ec0f3a46dcce91445747e15094"}, + {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5fe3e099cf07d0fb5a1e23d399e5d4d1ca3e6dfcbe5c8570ccff3e9208274f7"}, + {file = "wrapt-1.15.0-cp38-cp38-win32.whl", hash = "sha256:abd8f36c99512755b8456047b7be10372fca271bf1467a1caa88db991e7c421b"}, + {file = "wrapt-1.15.0-cp38-cp38-win_amd64.whl", hash = "sha256:b06fa97478a5f478fb05e1980980a7cdf2712015493b44d0c87606c1513ed5b1"}, + {file = "wrapt-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2e51de54d4fb8fb50d6ee8327f9828306a959ae394d3e01a1ba8b2f937747d86"}, + {file = "wrapt-1.15.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0970ddb69bba00670e58955f8019bec4a42d1785db3faa043c33d81de2bf843c"}, + {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76407ab327158c510f44ded207e2f76b657303e17cb7a572ffe2f5a8a48aa04d"}, + {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd525e0e52a5ff16653a3fc9e3dd827981917d34996600bbc34c05d048ca35cc"}, + {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d37ac69edc5614b90516807de32d08cb8e7b12260a285ee330955604ed9dd29"}, + {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:078e2a1a86544e644a68422f881c48b84fef6d18f8c7a957ffd3f2e0a74a0d4a"}, + {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2cf56d0e237280baed46f0b5316661da892565ff58309d4d2ed7dba763d984b8"}, + {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7dc0713bf81287a00516ef43137273b23ee414fe41a3c14be10dd95ed98a2df9"}, + {file = "wrapt-1.15.0-cp39-cp39-win32.whl", hash = "sha256:46ed616d5fb42f98630ed70c3529541408166c22cdfd4540b88d5f21006b0eff"}, + {file = "wrapt-1.15.0-cp39-cp39-win_amd64.whl", hash = "sha256:eef4d64c650f33347c1f9266fa5ae001440b232ad9b98f1f43dfe7a79435c0a6"}, + {file = "wrapt-1.15.0-py3-none-any.whl", hash = "sha256:64b1df0f83706b4ef4cfb4fb0e4c2669100fd7ecacfb59e091fad300d4e04640"}, + {file = "wrapt-1.15.0.tar.gz", hash = "sha256:d06730c6aed78cee4126234cf2d071e01b44b915e725a6cb439a879ec9754a3a"}, +] + +[[package]] +name = "wsproto" +version = "1.2.0" +description = "WebSockets state-machine based protocol implementation" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "wsproto-1.2.0-py3-none-any.whl", hash = "sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736"}, + {file = "wsproto-1.2.0.tar.gz", hash = "sha256:ad565f26ecb92588a3e43bc3d96164de84cd9902482b130d0ddbaa9664a85065"}, +] + +[package.dependencies] +h11 = ">=0.9.0,<1" + +[[package]] +name = "xxhash" +version = "3.4.1" +description = "Python binding for xxHash" +optional = false +python-versions = ">=3.7" +files = [ + {file = "xxhash-3.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:91dbfa55346ad3e18e738742236554531a621042e419b70ad8f3c1d9c7a16e7f"}, + {file = "xxhash-3.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:665a65c2a48a72068fcc4d21721510df5f51f1142541c890491afc80451636d2"}, + {file = "xxhash-3.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb11628470a6004dc71a09fe90c2f459ff03d611376c1debeec2d648f44cb693"}, + {file = "xxhash-3.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5bef2a7dc7b4f4beb45a1edbba9b9194c60a43a89598a87f1a0226d183764189"}, + {file = "xxhash-3.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c0f7b2d547d72c7eda7aa817acf8791f0146b12b9eba1d4432c531fb0352228"}, + {file = "xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00f2fdef6b41c9db3d2fc0e7f94cb3db86693e5c45d6de09625caad9a469635b"}, + {file = "xxhash-3.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:23cfd9ca09acaf07a43e5a695143d9a21bf00f5b49b15c07d5388cadf1f9ce11"}, + {file = "xxhash-3.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6a9ff50a3cf88355ca4731682c168049af1ca222d1d2925ef7119c1a78e95b3b"}, + {file = "xxhash-3.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:f1d7c69a1e9ca5faa75546fdd267f214f63f52f12692f9b3a2f6467c9e67d5e7"}, + {file = "xxhash-3.4.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:672b273040d5d5a6864a36287f3514efcd1d4b1b6a7480f294c4b1d1ee1b8de0"}, + {file = "xxhash-3.4.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:4178f78d70e88f1c4a89ff1ffe9f43147185930bb962ee3979dba15f2b1cc799"}, + {file = "xxhash-3.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9804b9eb254d4b8cc83ab5a2002128f7d631dd427aa873c8727dba7f1f0d1c2b"}, + {file = "xxhash-3.4.1-cp310-cp310-win32.whl", hash = "sha256:c09c49473212d9c87261d22c74370457cfff5db2ddfc7fd1e35c80c31a8c14ce"}, + {file = "xxhash-3.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:ebbb1616435b4a194ce3466d7247df23499475c7ed4eb2681a1fa42ff766aff6"}, + {file = "xxhash-3.4.1-cp310-cp310-win_arm64.whl", hash = "sha256:25dc66be3db54f8a2d136f695b00cfe88018e59ccff0f3b8f545869f376a8a46"}, + {file = "xxhash-3.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:58c49083801885273e262c0f5bbeac23e520564b8357fbb18fb94ff09d3d3ea5"}, + {file = "xxhash-3.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b526015a973bfbe81e804a586b703f163861da36d186627e27524f5427b0d520"}, + {file = "xxhash-3.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:36ad4457644c91a966f6fe137d7467636bdc51a6ce10a1d04f365c70d6a16d7e"}, + {file = "xxhash-3.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:248d3e83d119770f96003271fe41e049dd4ae52da2feb8f832b7a20e791d2920"}, + {file = "xxhash-3.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2070b6d5bbef5ee031666cf21d4953c16e92c2f8a24a94b5c240f8995ba3b1d0"}, + {file = "xxhash-3.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2746035f518f0410915e247877f7df43ef3372bf36cfa52cc4bc33e85242641"}, + {file = "xxhash-3.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a8ba6181514681c2591840d5632fcf7356ab287d4aff1c8dea20f3c78097088"}, + {file = "xxhash-3.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0aac5010869240e95f740de43cd6a05eae180c59edd182ad93bf12ee289484fa"}, + {file = "xxhash-3.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4cb11d8debab1626181633d184b2372aaa09825bde709bf927704ed72765bed1"}, + {file = "xxhash-3.4.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:b29728cff2c12f3d9f1d940528ee83918d803c0567866e062683f300d1d2eff3"}, + {file = "xxhash-3.4.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:a15cbf3a9c40672523bdb6ea97ff74b443406ba0ab9bca10ceccd9546414bd84"}, + {file = "xxhash-3.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6e66df260fed01ed8ea790c2913271641c58481e807790d9fca8bfd5a3c13844"}, + {file = "xxhash-3.4.1-cp311-cp311-win32.whl", hash = "sha256:e867f68a8f381ea12858e6d67378c05359d3a53a888913b5f7d35fbf68939d5f"}, + {file = "xxhash-3.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:200a5a3ad9c7c0c02ed1484a1d838b63edcf92ff538770ea07456a3732c577f4"}, + {file = "xxhash-3.4.1-cp311-cp311-win_arm64.whl", hash = "sha256:1d03f1c0d16d24ea032e99f61c552cb2b77d502e545187338bea461fde253583"}, + {file = "xxhash-3.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c4bbba9b182697a52bc0c9f8ec0ba1acb914b4937cd4a877ad78a3b3eeabefb3"}, + {file = "xxhash-3.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9fd28a9da300e64e434cfc96567a8387d9a96e824a9be1452a1e7248b7763b78"}, + {file = "xxhash-3.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6066d88c9329ab230e18998daec53d819daeee99d003955c8db6fc4971b45ca3"}, + {file = "xxhash-3.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:93805bc3233ad89abf51772f2ed3355097a5dc74e6080de19706fc447da99cd3"}, + {file = "xxhash-3.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:64da57d5ed586ebb2ecdde1e997fa37c27fe32fe61a656b77fabbc58e6fbff6e"}, + {file = "xxhash-3.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a97322e9a7440bf3c9805cbaac090358b43f650516486746f7fa482672593df"}, + {file = "xxhash-3.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bbe750d512982ee7d831838a5dee9e9848f3fb440e4734cca3f298228cc957a6"}, + {file = "xxhash-3.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:fd79d4087727daf4d5b8afe594b37d611ab95dc8e29fe1a7517320794837eb7d"}, + {file = "xxhash-3.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:743612da4071ff9aa4d055f3f111ae5247342931dedb955268954ef7201a71ff"}, + {file = "xxhash-3.4.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:b41edaf05734092f24f48c0958b3c6cbaaa5b7e024880692078c6b1f8247e2fc"}, + {file = "xxhash-3.4.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:a90356ead70d715fe64c30cd0969072de1860e56b78adf7c69d954b43e29d9fa"}, + {file = "xxhash-3.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ac56eebb364e44c85e1d9e9cc5f6031d78a34f0092fea7fc80478139369a8b4a"}, + {file = "xxhash-3.4.1-cp312-cp312-win32.whl", hash = "sha256:911035345932a153c427107397c1518f8ce456f93c618dd1c5b54ebb22e73747"}, + {file = "xxhash-3.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:f31ce76489f8601cc7b8713201ce94b4bd7b7ce90ba3353dccce7e9e1fee71fa"}, + {file = "xxhash-3.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:b5beb1c6a72fdc7584102f42c4d9df232ee018ddf806e8c90906547dfb43b2da"}, + {file = "xxhash-3.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6d42b24d1496deb05dee5a24ed510b16de1d6c866c626c2beb11aebf3be278b9"}, + {file = "xxhash-3.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b685fab18876b14a8f94813fa2ca80cfb5ab6a85d31d5539b7cd749ce9e3624"}, + {file = "xxhash-3.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:419ffe34c17ae2df019a4685e8d3934d46b2e0bbe46221ab40b7e04ed9f11137"}, + {file = "xxhash-3.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0e041ce5714f95251a88670c114b748bca3bf80cc72400e9f23e6d0d59cf2681"}, + {file = "xxhash-3.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc860d887c5cb2f524899fb8338e1bb3d5789f75fac179101920d9afddef284b"}, + {file = "xxhash-3.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:312eba88ffe0a05e332e3a6f9788b73883752be63f8588a6dc1261a3eaaaf2b2"}, + {file = "xxhash-3.4.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:e01226b6b6a1ffe4e6bd6d08cfcb3ca708b16f02eb06dd44f3c6e53285f03e4f"}, + {file = "xxhash-3.4.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:9f3025a0d5d8cf406a9313cd0d5789c77433ba2004b1c75439b67678e5136537"}, + {file = "xxhash-3.4.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:6d3472fd4afef2a567d5f14411d94060099901cd8ce9788b22b8c6f13c606a93"}, + {file = "xxhash-3.4.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:43984c0a92f06cac434ad181f329a1445017c33807b7ae4f033878d860a4b0f2"}, + {file = "xxhash-3.4.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a55e0506fdb09640a82ec4f44171273eeabf6f371a4ec605633adb2837b5d9d5"}, + {file = "xxhash-3.4.1-cp37-cp37m-win32.whl", hash = "sha256:faec30437919555b039a8bdbaba49c013043e8f76c999670aef146d33e05b3a0"}, + {file = "xxhash-3.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:c9e1b646af61f1fc7083bb7b40536be944f1ac67ef5e360bca2d73430186971a"}, + {file = "xxhash-3.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:961d948b7b1c1b6c08484bbce3d489cdf153e4122c3dfb07c2039621243d8795"}, + {file = "xxhash-3.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:719a378930504ab159f7b8e20fa2aa1896cde050011af838af7e7e3518dd82de"}, + {file = "xxhash-3.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:74fb5cb9406ccd7c4dd917f16630d2e5e8cbbb02fc2fca4e559b2a47a64f4940"}, + {file = "xxhash-3.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5dab508ac39e0ab988039bc7f962c6ad021acd81fd29145962b068df4148c476"}, + {file = "xxhash-3.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8c59f3e46e7daf4c589e8e853d700ef6607afa037bfad32c390175da28127e8c"}, + {file = "xxhash-3.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cc07256eff0795e0f642df74ad096f8c5d23fe66bc138b83970b50fc7f7f6c5"}, + {file = "xxhash-3.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e9f749999ed80f3955a4af0eb18bb43993f04939350b07b8dd2f44edc98ffee9"}, + {file = "xxhash-3.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7688d7c02149a90a3d46d55b341ab7ad1b4a3f767be2357e211b4e893efbaaf6"}, + {file = "xxhash-3.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a8b4977963926f60b0d4f830941c864bed16aa151206c01ad5c531636da5708e"}, + {file = "xxhash-3.4.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:8106d88da330f6535a58a8195aa463ef5281a9aa23b04af1848ff715c4398fb4"}, + {file = "xxhash-3.4.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:4c76a77dbd169450b61c06fd2d5d436189fc8ab7c1571d39265d4822da16df22"}, + {file = "xxhash-3.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:11f11357c86d83e53719c592021fd524efa9cf024dc7cb1dfb57bbbd0d8713f2"}, + {file = "xxhash-3.4.1-cp38-cp38-win32.whl", hash = "sha256:0c786a6cd74e8765c6809892a0d45886e7c3dc54de4985b4a5eb8b630f3b8e3b"}, + {file = "xxhash-3.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:aabf37fb8fa27430d50507deeab2ee7b1bcce89910dd10657c38e71fee835594"}, + {file = "xxhash-3.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6127813abc1477f3a83529b6bbcfeddc23162cece76fa69aee8f6a8a97720562"}, + {file = "xxhash-3.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ef2e194262f5db16075caea7b3f7f49392242c688412f386d3c7b07c7733a70a"}, + {file = "xxhash-3.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71be94265b6c6590f0018bbf73759d21a41c6bda20409782d8117e76cd0dfa8b"}, + {file = "xxhash-3.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:10e0a619cdd1c0980e25eb04e30fe96cf8f4324758fa497080af9c21a6de573f"}, + {file = "xxhash-3.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fa122124d2e3bd36581dd78c0efa5f429f5220313479fb1072858188bc2d5ff1"}, + {file = "xxhash-3.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17032f5a4fea0a074717fe33477cb5ee723a5f428de7563e75af64bfc1b1e10"}, + {file = "xxhash-3.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca7783b20e3e4f3f52f093538895863f21d18598f9a48211ad757680c3bd006f"}, + {file = "xxhash-3.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d77d09a1113899fad5f354a1eb4f0a9afcf58cefff51082c8ad643ff890e30cf"}, + {file = "xxhash-3.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:21287bcdd299fdc3328cc0fbbdeaa46838a1c05391264e51ddb38a3f5b09611f"}, + {file = "xxhash-3.4.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:dfd7a6cc483e20b4ad90224aeb589e64ec0f31e5610ab9957ff4314270b2bf31"}, + {file = "xxhash-3.4.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:543c7fcbc02bbb4840ea9915134e14dc3dc15cbd5a30873a7a5bf66039db97ec"}, + {file = "xxhash-3.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:fe0a98d990e433013f41827b62be9ab43e3cf18e08b1483fcc343bda0d691182"}, + {file = "xxhash-3.4.1-cp39-cp39-win32.whl", hash = "sha256:b9097af00ebf429cc7c0e7d2fdf28384e4e2e91008130ccda8d5ae653db71e54"}, + {file = "xxhash-3.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:d699b921af0dcde50ab18be76c0d832f803034d80470703700cb7df0fbec2832"}, + {file = "xxhash-3.4.1-cp39-cp39-win_arm64.whl", hash = "sha256:2be491723405e15cc099ade1280133ccfbf6322d2ef568494fb7d07d280e7eee"}, + {file = "xxhash-3.4.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:431625fad7ab5649368c4849d2b49a83dc711b1f20e1f7f04955aab86cd307bc"}, + {file = "xxhash-3.4.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc6dbd5fc3c9886a9e041848508b7fb65fd82f94cc793253990f81617b61fe49"}, + {file = "xxhash-3.4.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3ff8dbd0ec97aec842476cb8ccc3e17dd288cd6ce3c8ef38bff83d6eb927817"}, + {file = "xxhash-3.4.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef73a53fe90558a4096e3256752268a8bdc0322f4692ed928b6cd7ce06ad4fe3"}, + {file = "xxhash-3.4.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:450401f42bbd274b519d3d8dcf3c57166913381a3d2664d6609004685039f9d3"}, + {file = "xxhash-3.4.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a162840cf4de8a7cd8720ff3b4417fbc10001eefdd2d21541a8226bb5556e3bb"}, + {file = "xxhash-3.4.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b736a2a2728ba45017cb67785e03125a79d246462dfa892d023b827007412c52"}, + {file = "xxhash-3.4.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d0ae4c2e7698adef58710d6e7a32ff518b66b98854b1c68e70eee504ad061d8"}, + {file = "xxhash-3.4.1-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6322c4291c3ff174dcd104fae41500e75dad12be6f3085d119c2c8a80956c51"}, + {file = "xxhash-3.4.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:dd59ed668801c3fae282f8f4edadf6dc7784db6d18139b584b6d9677ddde1b6b"}, + {file = "xxhash-3.4.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:92693c487e39523a80474b0394645b393f0ae781d8db3474ccdcead0559ccf45"}, + {file = "xxhash-3.4.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4603a0f642a1e8d7f3ba5c4c25509aca6a9c1cc16f85091004a7028607ead663"}, + {file = "xxhash-3.4.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fa45e8cbfbadb40a920fe9ca40c34b393e0b067082d94006f7f64e70c7490a6"}, + {file = "xxhash-3.4.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:595b252943b3552de491ff51e5bb79660f84f033977f88f6ca1605846637b7c6"}, + {file = "xxhash-3.4.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:562d8b8f783c6af969806aaacf95b6c7b776929ae26c0cd941d54644ea7ef51e"}, + {file = "xxhash-3.4.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:41ddeae47cf2828335d8d991f2d2b03b0bdc89289dc64349d712ff8ce59d0647"}, + {file = "xxhash-3.4.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c44d584afdf3c4dbb3277e32321d1a7b01d6071c1992524b6543025fb8f4206f"}, + {file = "xxhash-3.4.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd7bddb3a5b86213cc3f2c61500c16945a1b80ecd572f3078ddbbe68f9dabdfb"}, + {file = "xxhash-3.4.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9ecb6c987b62437c2f99c01e97caf8d25660bf541fe79a481d05732e5236719c"}, + {file = "xxhash-3.4.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:696b4e18b7023527d5c50ed0626ac0520edac45a50ec7cf3fc265cd08b1f4c03"}, + {file = "xxhash-3.4.1.tar.gz", hash = "sha256:0379d6cf1ff987cd421609a264ce025e74f346e3e145dd106c0cc2e3ec3f99a9"}, +] + +[[package]] +name = "yarl" +version = "1.9.2" +description = "Yet another URL library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "yarl-1.9.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8c2ad583743d16ddbdf6bb14b5cd76bf43b0d0006e918809d5d4ddf7bde8dd82"}, + {file = "yarl-1.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:82aa6264b36c50acfb2424ad5ca537a2060ab6de158a5bd2a72a032cc75b9eb8"}, + {file = "yarl-1.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c0c77533b5ed4bcc38e943178ccae29b9bcf48ffd1063f5821192f23a1bd27b9"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee4afac41415d52d53a9833ebae7e32b344be72835bbb589018c9e938045a560"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9bf345c3a4f5ba7f766430f97f9cc1320786f19584acc7086491f45524a551ac"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2a96c19c52ff442a808c105901d0bdfd2e28575b3d5f82e2f5fd67e20dc5f4ea"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:891c0e3ec5ec881541f6c5113d8df0315ce5440e244a716b95f2525b7b9f3608"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c3a53ba34a636a256d767c086ceb111358876e1fb6b50dfc4d3f4951d40133d5"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:566185e8ebc0898b11f8026447eacd02e46226716229cea8db37496c8cdd26e0"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2b0738fb871812722a0ac2154be1f049c6223b9f6f22eec352996b69775b36d4"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:32f1d071b3f362c80f1a7d322bfd7b2d11e33d2adf395cc1dd4df36c9c243095"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:e9fdc7ac0d42bc3ea78818557fab03af6181e076a2944f43c38684b4b6bed8e3"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:56ff08ab5df8429901ebdc5d15941b59f6253393cb5da07b4170beefcf1b2528"}, + {file = "yarl-1.9.2-cp310-cp310-win32.whl", hash = "sha256:8ea48e0a2f931064469bdabca50c2f578b565fc446f302a79ba6cc0ee7f384d3"}, + {file = "yarl-1.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:50f33040f3836e912ed16d212f6cc1efb3231a8a60526a407aeb66c1c1956dde"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:646d663eb2232d7909e6601f1a9107e66f9791f290a1b3dc7057818fe44fc2b6"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:aff634b15beff8902d1f918012fc2a42e0dbae6f469fce134c8a0dc51ca423bb"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a83503934c6273806aed765035716216cc9ab4e0364f7f066227e1aaea90b8d0"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b25322201585c69abc7b0e89e72790469f7dad90d26754717f3310bfe30331c2"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:22a94666751778629f1ec4280b08eb11815783c63f52092a5953faf73be24191"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ec53a0ea2a80c5cd1ab397925f94bff59222aa3cf9c6da938ce05c9ec20428d"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:159d81f22d7a43e6eabc36d7194cb53f2f15f498dbbfa8edc8a3239350f59fe7"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:832b7e711027c114d79dffb92576acd1bd2decc467dec60e1cac96912602d0e6"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:95d2ecefbcf4e744ea952d073c6922e72ee650ffc79028eb1e320e732898d7e8"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d4e2c6d555e77b37288eaf45b8f60f0737c9efa3452c6c44626a5455aeb250b9"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:783185c75c12a017cc345015ea359cc801c3b29a2966c2655cd12b233bf5a2be"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:b8cc1863402472f16c600e3e93d542b7e7542a540f95c30afd472e8e549fc3f7"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:822b30a0f22e588b32d3120f6d41e4ed021806418b4c9f0bc3048b8c8cb3f92a"}, + {file = "yarl-1.9.2-cp311-cp311-win32.whl", hash = "sha256:a60347f234c2212a9f0361955007fcf4033a75bf600a33c88a0a8e91af77c0e8"}, + {file = "yarl-1.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:be6b3fdec5c62f2a67cb3f8c6dbf56bbf3f61c0f046f84645cd1ca73532ea051"}, + {file = "yarl-1.9.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:38a3928ae37558bc1b559f67410df446d1fbfa87318b124bf5032c31e3447b74"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac9bb4c5ce3975aeac288cfcb5061ce60e0d14d92209e780c93954076c7c4367"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3da8a678ca8b96c8606bbb8bfacd99a12ad5dd288bc6f7979baddd62f71c63ef"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:13414591ff516e04fcdee8dc051c13fd3db13b673c7a4cb1350e6b2ad9639ad3"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf74d08542c3a9ea97bb8f343d4fcbd4d8f91bba5ec9d5d7f792dbe727f88938"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e7221580dc1db478464cfeef9b03b95c5852cc22894e418562997df0d074ccc"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:494053246b119b041960ddcd20fd76224149cfea8ed8777b687358727911dd33"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:52a25809fcbecfc63ac9ba0c0fb586f90837f5425edfd1ec9f3372b119585e45"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:e65610c5792870d45d7b68c677681376fcf9cc1c289f23e8e8b39c1485384185"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:1b1bba902cba32cdec51fca038fd53f8beee88b77efc373968d1ed021024cc04"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:662e6016409828ee910f5d9602a2729a8a57d74b163c89a837de3fea050c7582"}, + {file = "yarl-1.9.2-cp37-cp37m-win32.whl", hash = "sha256:f364d3480bffd3aa566e886587eaca7c8c04d74f6e8933f3f2c996b7f09bee1b"}, + {file = "yarl-1.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6a5883464143ab3ae9ba68daae8e7c5c95b969462bbe42e2464d60e7e2698368"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5610f80cf43b6202e2c33ba3ec2ee0a2884f8f423c8f4f62906731d876ef4fac"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b9a4e67ad7b646cd6f0938c7ebfd60e481b7410f574c560e455e938d2da8e0f4"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:83fcc480d7549ccebe9415d96d9263e2d4226798c37ebd18c930fce43dfb9574"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fcd436ea16fee7d4207c045b1e340020e58a2597301cfbcfdbe5abd2356c2fb"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84e0b1599334b1e1478db01b756e55937d4614f8654311eb26012091be109d59"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3458a24e4ea3fd8930e934c129b676c27452e4ebda80fbe47b56d8c6c7a63a9e"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:838162460b3a08987546e881a2bfa573960bb559dfa739e7800ceeec92e64417"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f4e2d08f07a3d7d3e12549052eb5ad3eab1c349c53ac51c209a0e5991bbada78"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:de119f56f3c5f0e2fb4dee508531a32b069a5f2c6e827b272d1e0ff5ac040333"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:149ddea5abf329752ea5051b61bd6c1d979e13fbf122d3a1f9f0c8be6cb6f63c"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:674ca19cbee4a82c9f54e0d1eee28116e63bc6fd1e96c43031d11cbab8b2afd5"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:9b3152f2f5677b997ae6c804b73da05a39daa6a9e85a512e0e6823d81cdad7cc"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5415d5a4b080dc9612b1b63cba008db84e908b95848369aa1da3686ae27b6d2b"}, + {file = "yarl-1.9.2-cp38-cp38-win32.whl", hash = "sha256:f7a3d8146575e08c29ed1cd287068e6d02f1c7bdff8970db96683b9591b86ee7"}, + {file = "yarl-1.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:63c48f6cef34e6319a74c727376e95626f84ea091f92c0250a98e53e62c77c72"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:75df5ef94c3fdc393c6b19d80e6ef1ecc9ae2f4263c09cacb178d871c02a5ba9"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c027a6e96ef77d401d8d5a5c8d6bc478e8042f1e448272e8d9752cb0aff8b5c8"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3b078dbe227f79be488ffcfc7a9edb3409d018e0952cf13f15fd6512847f3f7"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59723a029760079b7d991a401386390c4be5bfec1e7dd83e25a6a0881859e716"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b03917871bf859a81ccb180c9a2e6c1e04d2f6a51d953e6a5cdd70c93d4e5a2a"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c1012fa63eb6c032f3ce5d2171c267992ae0c00b9e164efe4d73db818465fac3"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a74dcbfe780e62f4b5a062714576f16c2f3493a0394e555ab141bf0d746bb955"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c56986609b057b4839968ba901944af91b8e92f1725d1a2d77cbac6972b9ed1"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2c315df3293cd521033533d242d15eab26583360b58f7ee5d9565f15fee1bef4"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:b7232f8dfbd225d57340e441d8caf8652a6acd06b389ea2d3222b8bc89cbfca6"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:53338749febd28935d55b41bf0bcc79d634881195a39f6b2f767870b72514caf"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:066c163aec9d3d073dc9ffe5dd3ad05069bcb03fcaab8d221290ba99f9f69ee3"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8288d7cd28f8119b07dd49b7230d6b4562f9b61ee9a4ab02221060d21136be80"}, + {file = "yarl-1.9.2-cp39-cp39-win32.whl", hash = "sha256:b124e2a6d223b65ba8768d5706d103280914d61f5cae3afbc50fc3dfcc016623"}, + {file = "yarl-1.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:61016e7d582bc46a5378ffdd02cd0314fb8ba52f40f9cf4d9a5e7dbef88dee18"}, + {file = "yarl-1.9.2.tar.gz", hash = "sha256:04ab9d4b9f587c06d801c2abfe9317b77cdf996c65a90d5e84ecc45010823571"}, +] + +[package.dependencies] +idna = ">=2.0" +multidict = ">=4.0" + +[[package]] +name = "zipp" +version = "3.17.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, + {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + +[metadata] +lock-version = "2.0" +python-versions = "^3.9" +content-hash = "acec8f4023b2b847a43c3056e90a99028ae9d21f7ffab4e364e8531aad41aeb0" diff --git a/usecases/llm/pyproject.toml b/usecases/llm/pyproject.toml new file mode 100644 index 00000000..83712c49 --- /dev/null +++ b/usecases/llm/pyproject.toml @@ -0,0 +1,26 @@ +[tool.poetry] +name = "llm-sample" +version = "0.1.0" +description = "" +authors = ["Mrunmay Shelar "] +license = "MIT" +readme = "README.md" + +[tool.poetry.dependencies] +python = "^3.9" +pydozer = {git = "git@github.com:getdozer/dozer-python.git", rev = "main"} +numpy = "1.25" +pandas = "2.1" +langchain = "^0.0.320" +datasets = "^2.14.5" +huggingface-hub = "^0.18.0" +sentence-transformers = "^2.2.2" +openai = "^0.28.1" +pinecone-client = "^2.2.4" +chainlit = "^0.7.301" +tiktoken = "^0.5.1" +farm-haystack = "^1.21.2" + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" diff --git a/usecases/llm/requirements.txt b/usecases/llm/requirements.txt new file mode 100644 index 00000000..22b6c976 --- /dev/null +++ b/usecases/llm/requirements.txt @@ -0,0 +1,11 @@ +pydozer +numpy==1.25 +pandas ==2.1 +langchain +datasets +chainlit +huggingface-hub +sentence-transformers +openai +pinecone-client +tiktoken \ No newline at end of file