Abraham E. Tavarez
commited on
Commit
·
a340f3e
1
Parent(s):
837d8ef
llama agent created
Browse files- .gitignore +2 -0
- app.py +35 -118
- mcp/client.py +0 -0
- mcp/server.py +0 -0
- pyproject.toml +3 -0
- reports/pdf_report.py +83 -0
- tools.py +116 -0
- uv.lock +767 -0
.gitignore
CHANGED
|
@@ -8,3 +8,5 @@ wheels/
|
|
| 8 |
|
| 9 |
# Virtual environments
|
| 10 |
.venv
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
# Virtual environments
|
| 10 |
.venv
|
| 11 |
+
app.copy.py
|
| 12 |
+
app.audio.tool.py
|
app.py
CHANGED
|
@@ -1,127 +1,44 @@
|
|
| 1 |
import gradio as gr
|
| 2 |
-
from
|
| 3 |
-
from
|
| 4 |
-
import modal
|
| 5 |
-
|
| 6 |
-
verify_faces_remote = modal.Function.lookup("deepface-agent", "verify_faces_remote")
|
| 7 |
-
verify_voices_remote = modal.Function.lookup("deepface-agent", "verify_voices_remote")
|
| 8 |
-
verify_faces_in_video_remote = modal.Function.lookup(
|
| 9 |
-
"deepface-agent", "verify_faces_in_video_remote"
|
| 10 |
-
)
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
# Holds latest results
|
| 14 |
-
last_face_result = None
|
| 15 |
-
last_voice_result = None
|
| 16 |
-
last_video_results = None
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
def compare_faces(img1_path: str, img2_path: str) -> str:
|
| 20 |
-
"""Use this tool to compare to faces for a match
|
| 21 |
-
Args:
|
| 22 |
-
img1_path: The path to the first image
|
| 23 |
-
img2_path: The path to the second image
|
| 24 |
-
"""
|
| 25 |
-
global last_face_result
|
| 26 |
-
|
| 27 |
-
# Read image files as bytes
|
| 28 |
-
with open(img1_path, "rb") as f1, open(img2_path, "rb") as f2:
|
| 29 |
-
img1_bytes = f1.read()
|
| 30 |
-
img2_bytes = f2.read()
|
| 31 |
-
|
| 32 |
-
result = verify_faces_remote.remote(img1_bytes, img2_bytes)
|
| 33 |
-
result_text = ""
|
| 34 |
-
|
| 35 |
-
if "error" in result:
|
| 36 |
-
return f"❌ Error: {result['error']}"
|
| 37 |
-
|
| 38 |
-
if result["verified"]:
|
| 39 |
-
result_text = f"✅ Match! Distance: {result['distance']:.4f} (Threshold: {result['threshold']})"
|
| 40 |
-
last_face_result = result_text
|
| 41 |
-
return result_text
|
| 42 |
-
|
| 43 |
-
else:
|
| 44 |
-
result_text = f"❌ No Match. Distance: {result['distance']:.4f} (Threshold: {result['threshold']})"
|
| 45 |
-
last_face_result = result_text
|
| 46 |
-
return result_text
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
def compare_voices(audio1: str, audio2: str) -> str:
|
| 50 |
-
"""Use this tool to compare two voices for a match
|
| 51 |
-
Args:
|
| 52 |
-
audio1: The path to the first audio file
|
| 53 |
-
audio2: The path to the second audio file
|
| 54 |
-
"""
|
| 55 |
-
global last_voice_result
|
| 56 |
-
|
| 57 |
-
try:
|
| 58 |
-
with open(audio1, "rb") as a1, open(audio2, "rb") as a2:
|
| 59 |
-
audio1_bytes = a1.read()
|
| 60 |
-
audio2_bytes = a2.read()
|
| 61 |
-
|
| 62 |
-
result = verify_voices_remote.remote(audio1_bytes, audio2_bytes)
|
| 63 |
-
result_text = ""
|
| 64 |
-
|
| 65 |
-
if "error" in result:
|
| 66 |
-
return f"❌ Error: {result['error']}"
|
| 67 |
-
|
| 68 |
-
if result["match"]:
|
| 69 |
-
result_text = f"✅ Same speaker detected. Similarity: {result['similarity']} (Threshold: {result['threshold']})"
|
| 70 |
-
last_voice_result = result_text
|
| 71 |
-
return result_text
|
| 72 |
-
else:
|
| 73 |
-
result_text = f"❌ Different speakers. Similarity: {result['similarity']} (Threshold: {result['threshold']})"
|
| 74 |
-
last_voice_result = result_text
|
| 75 |
-
return result_text
|
| 76 |
-
except Exception as e:
|
| 77 |
-
return f"❌ Error reading audio files: {str(e)}"
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
def scan_video(video_file: str, ref_img: str, youtube_url="") -> str:
|
| 81 |
-
"""Use this tool to scan a video for deepfake face swaps
|
| 82 |
-
Args:
|
| 83 |
-
video_file: The path to the video file
|
| 84 |
-
ref_img: The path to the reference image
|
| 85 |
-
youtube_url: The YouTube URL (optional)
|
| 86 |
-
"""
|
| 87 |
-
global last_video_results
|
| 88 |
-
|
| 89 |
-
if youtube_url:
|
| 90 |
-
try:
|
| 91 |
-
video_file = download_youtube_video(youtube_url)
|
| 92 |
-
except Exception as e:
|
| 93 |
-
return f"❌ Error downloading YouTube video: {str(e)}"
|
| 94 |
-
|
| 95 |
-
with open(video_file, "rb") as vf, open(ref_img, "rb") as rf:
|
| 96 |
-
video_bytes = vf.read()
|
| 97 |
-
ref_img_bytes = rf.read()
|
| 98 |
-
try:
|
| 99 |
-
results = verify_faces_in_video_remote.remote(video_bytes, ref_img_bytes, interval=30)
|
| 100 |
-
|
| 101 |
-
except Exception as e:
|
| 102 |
-
return f"❌ Error processing video: {str(e)}"
|
| 103 |
-
|
| 104 |
-
report = ""
|
| 105 |
-
last_video_results = results
|
| 106 |
-
for r in results:
|
| 107 |
-
if "error" in r:
|
| 108 |
-
report += f"\n⚠️ Frame {r['frame']}: {r['error']}"
|
| 109 |
-
|
| 110 |
-
else:
|
| 111 |
-
status = "✅ Match" if r["verified"] else "❌ Mismatch"
|
| 112 |
-
report += f"\n🖼 Frame {r['frame']}: {status} (Distance: {r['distance']})"
|
| 113 |
-
|
| 114 |
-
return report
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
def generate_report():
|
| 118 |
-
return generate_pdf_report(last_face_result, last_voice_result, last_video_results)
|
| 119 |
-
|
| 120 |
|
| 121 |
with gr.Blocks(title="Deepfake Watchdog") as demo:
|
| 122 |
gr.Markdown("# 🛡️Deepfake Watchdog 🤗")
|
| 123 |
gr.Markdown("## Upload your image and/or voice to scan for deepfake misuse online.")
|
| 124 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
# Face Verification
|
| 126 |
with gr.Tab("Face Verification"):
|
| 127 |
image1 = gr.Image(label="Upload your face", type="filepath")
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
from tools import compare_faces, compare_voices, scan_video, generate_report
|
| 3 |
+
from llama_agent import chat_with_agent
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
|
| 5 |
with gr.Blocks(title="Deepfake Watchdog") as demo:
|
| 6 |
gr.Markdown("# 🛡️Deepfake Watchdog 🤗")
|
| 7 |
gr.Markdown("## Upload your image and/or voice to scan for deepfake misuse online.")
|
| 8 |
|
| 9 |
+
# Chat
|
| 10 |
+
with gr.Tab("🤖 Chat with Agent"):
|
| 11 |
+
gr.Markdown(
|
| 12 |
+
"Chat with the AI agent. Ask it to compare faces, voices, or scan videos naturally."
|
| 13 |
+
)
|
| 14 |
+
user_prompt = gr.Textbox(label="Prompt", lines=3)
|
| 15 |
+
gr.Markdown("### Example Prompts:")
|
| 16 |
+
gr.Markdown("##### Compare the two uploaded faces and tell me if they match")
|
| 17 |
+
gr.Markdown("##### Check if the two voices are from the same speaker")
|
| 18 |
+
gr.Markdown(
|
| 19 |
+
"##### Scan a video for a provided reference image to check for deepfakes"
|
| 20 |
+
)
|
| 21 |
+
|
| 22 |
+
with gr.Row():
|
| 23 |
+
img1 = gr.Image(type="filepath", label="Image 1")
|
| 24 |
+
img2 = gr.Image(type="filepath", label="Image 2")
|
| 25 |
+
|
| 26 |
+
with gr.Row():
|
| 27 |
+
audio1 = gr.Audio(type="filepath", label="Audio 1")
|
| 28 |
+
audio2 = gr.Audio(type="filepath", label="Audio 2")
|
| 29 |
+
|
| 30 |
+
ref_img = gr.Image(type="filepath", label="Reference Image")
|
| 31 |
+
video = gr.Video(label="Video file")
|
| 32 |
+
|
| 33 |
+
chat_btn = gr.Button("Chat")
|
| 34 |
+
chat_output = gr.Textbox(label="Chat Output", lines=10)
|
| 35 |
+
|
| 36 |
+
chat_btn.click(
|
| 37 |
+
chat_with_agent,
|
| 38 |
+
inputs=[user_prompt, img1, img2, audio1, audio2, video, ref_img],
|
| 39 |
+
outputs=[chat_output],
|
| 40 |
+
)
|
| 41 |
+
|
| 42 |
# Face Verification
|
| 43 |
with gr.Tab("Face Verification"):
|
| 44 |
image1 = gr.Image(label="Upload your face", type="filepath")
|
mcp/client.py
ADDED
|
File without changes
|
mcp/server.py
ADDED
|
File without changes
|
pyproject.toml
CHANGED
|
@@ -5,9 +5,12 @@ description = "Add your description here"
|
|
| 5 |
readme = "README.md"
|
| 6 |
requires-python = ">=3.12"
|
| 7 |
dependencies = [
|
|
|
|
| 8 |
"deepface>=0.0.93",
|
| 9 |
"fpdf>=1.7.2",
|
| 10 |
"gradio[mcp]>=5.32.1",
|
|
|
|
|
|
|
| 11 |
"modal>=1.0.3",
|
| 12 |
"opencv-python-headless>=4.11.0.86",
|
| 13 |
"pydub>=0.25.1",
|
|
|
|
| 5 |
readme = "README.md"
|
| 6 |
requires-python = ">=3.12"
|
| 7 |
dependencies = [
|
| 8 |
+
"anthropic>=0.53.0",
|
| 9 |
"deepface>=0.0.93",
|
| 10 |
"fpdf>=1.7.2",
|
| 11 |
"gradio[mcp]>=5.32.1",
|
| 12 |
+
"llama-index>=0.12.41",
|
| 13 |
+
"llama-index-llms-anthropic>=0.7.2",
|
| 14 |
"modal>=1.0.3",
|
| 15 |
"opencv-python-headless>=4.11.0.86",
|
| 16 |
"pydub>=0.25.1",
|
reports/pdf_report.py
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from fpdf import FPDF
|
| 2 |
+
import os
|
| 3 |
+
import datetime
|
| 4 |
+
|
| 5 |
+
|
| 6 |
+
class ReportGenerator(FPDF):
|
| 7 |
+
def header(self):
|
| 8 |
+
self.set_font("Arial", "B", 16)
|
| 9 |
+
self.cell(0, 10, "Deepfake Watchdog Report", ln=1, align="C")
|
| 10 |
+
self.ln(5)
|
| 11 |
+
|
| 12 |
+
def add_section_title(self, title):
|
| 13 |
+
self.set_font("Arial", "B", 12)
|
| 14 |
+
self.cell(0, 10, title, ln=1, align="L")
|
| 15 |
+
self.ln(2)
|
| 16 |
+
|
| 17 |
+
def add_text(self, text):
|
| 18 |
+
self.set_font("Arial", "", 12)
|
| 19 |
+
safe_text = str(text) if text is not None else ""
|
| 20 |
+
self.multi_cell(0, 8, safe_text)
|
| 21 |
+
self.ln(2)
|
| 22 |
+
|
| 23 |
+
def add_image(self, image_path, w=60):
|
| 24 |
+
if os.path.exists(image_path):
|
| 25 |
+
self.image(image_path, w=w)
|
| 26 |
+
self.ln(5)
|
| 27 |
+
else:
|
| 28 |
+
print(f"Image not found: {image_path}")
|
| 29 |
+
|
| 30 |
+
|
| 31 |
+
# Replace emojis with text equivalents
|
| 32 |
+
def clean_text(text):
|
| 33 |
+
return (
|
| 34 |
+
text.replace("✅", "[MATCH]")
|
| 35 |
+
.replace("❌", "[NO MATCH]")
|
| 36 |
+
.replace("⚠️", "[WARNING]")
|
| 37 |
+
)
|
| 38 |
+
|
| 39 |
+
|
| 40 |
+
# Generate PDF Report
|
| 41 |
+
def generate_pdf_report(
|
| 42 |
+
face_result,
|
| 43 |
+
voice_result,
|
| 44 |
+
video_results,
|
| 45 |
+
output_path=f"report{datetime.datetime.now().strftime('%Y-%m-%d_%H-%M-%S')}.pdf",
|
| 46 |
+
):
|
| 47 |
+
pdf = ReportGenerator()
|
| 48 |
+
pdf.add_page()
|
| 49 |
+
|
| 50 |
+
print("Generating PDF report...")
|
| 51 |
+
print(face_result)
|
| 52 |
+
print(voice_result)
|
| 53 |
+
print(video_results)
|
| 54 |
+
|
| 55 |
+
# Section 1: Face Verification
|
| 56 |
+
if face_result:
|
| 57 |
+
pdf.add_section_title("Face Verification Results")
|
| 58 |
+
pdf.add_text(clean_text(face_result))
|
| 59 |
+
|
| 60 |
+
# Section 2: Voice Verification
|
| 61 |
+
if voice_result:
|
| 62 |
+
pdf.add_section_title("Voice Verification Results")
|
| 63 |
+
pdf.add_text(clean_text(voice_result))
|
| 64 |
+
|
| 65 |
+
# Section 3: Video Verification
|
| 66 |
+
if video_results:
|
| 67 |
+
pdf.add_section_title("Video Verification Results")
|
| 68 |
+
|
| 69 |
+
for frame in video_results:
|
| 70 |
+
if "error" in frame:
|
| 71 |
+
pdf.add_text(clean_text(f"{frame['frame']}: ERROR - {frame['error']}"))
|
| 72 |
+
else:
|
| 73 |
+
status = "✅ Match" if frame["verified"] else "❌ Mismatch"
|
| 74 |
+
pdf.add_text(
|
| 75 |
+
clean_text(f"{frame['frame']} - {status} (Distance: {frame['distance']})")
|
| 76 |
+
)
|
| 77 |
+
|
| 78 |
+
if not frame["verified"]:
|
| 79 |
+
pdf.add_image(frame["frame"], w=80)
|
| 80 |
+
|
| 81 |
+
pdf.output(output_path)
|
| 82 |
+
print(f"PDF report generated at: {output_path}")
|
| 83 |
+
return output_path
|
tools.py
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import modal
|
| 2 |
+
from utils.youtube_utils import download_youtube_video
|
| 3 |
+
from reports.pdf_report import generate_pdf_report
|
| 4 |
+
|
| 5 |
+
last_face_result = ""
|
| 6 |
+
last_voice_result = ""
|
| 7 |
+
last_video_results = []
|
| 8 |
+
|
| 9 |
+
verify_faces_remote = modal.Function.lookup("deepface-agent", "verify_faces_remote")
|
| 10 |
+
verify_voices_remote = modal.Function.lookup("deepface-agent", "verify_voices_remote")
|
| 11 |
+
verify_faces_in_video_remote = modal.Function.lookup(
|
| 12 |
+
"deepface-agent", "verify_faces_in_video_remote"
|
| 13 |
+
)
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
def compare_faces(img1_path: str, img2_path: str) -> str:
|
| 17 |
+
"""Use this tool to compare to faces for a match
|
| 18 |
+
Args:
|
| 19 |
+
img1_path: The path to the first image
|
| 20 |
+
img2_path: The path to the second image
|
| 21 |
+
"""
|
| 22 |
+
global last_face_result
|
| 23 |
+
|
| 24 |
+
# Read image files as bytes
|
| 25 |
+
with open(img1_path, "rb") as f1, open(img2_path, "rb") as f2:
|
| 26 |
+
img1_bytes = f1.read()
|
| 27 |
+
img2_bytes = f2.read()
|
| 28 |
+
|
| 29 |
+
result = verify_faces_remote.remote(img1_bytes, img2_bytes)
|
| 30 |
+
result_text = ""
|
| 31 |
+
|
| 32 |
+
if "error" in result:
|
| 33 |
+
return f"❌ Error: {result['error']}"
|
| 34 |
+
|
| 35 |
+
if result["verified"]:
|
| 36 |
+
result_text = f"✅ Match! Distance: {result['distance']:.4f} (Threshold: {result['threshold']})"
|
| 37 |
+
last_face_result = result_text
|
| 38 |
+
return result_text
|
| 39 |
+
|
| 40 |
+
else:
|
| 41 |
+
result_text = f"❌ No Match. Distance: {result['distance']:.4f} (Threshold: {result['threshold']})"
|
| 42 |
+
last_face_result = result_text
|
| 43 |
+
return result_text
|
| 44 |
+
|
| 45 |
+
|
| 46 |
+
def compare_voices(audio1: str, audio2: str) -> str:
|
| 47 |
+
"""Use this tool to compare two voices for a match
|
| 48 |
+
Args:
|
| 49 |
+
audio1: The path to the first audio file
|
| 50 |
+
audio2: The path to the second audio file
|
| 51 |
+
"""
|
| 52 |
+
global last_voice_result
|
| 53 |
+
|
| 54 |
+
try:
|
| 55 |
+
with open(audio1, "rb") as a1, open(audio2, "rb") as a2:
|
| 56 |
+
audio1_bytes = a1.read()
|
| 57 |
+
audio2_bytes = a2.read()
|
| 58 |
+
|
| 59 |
+
result = verify_voices_remote.remote(audio1_bytes, audio2_bytes)
|
| 60 |
+
result_text = ""
|
| 61 |
+
|
| 62 |
+
if "error" in result:
|
| 63 |
+
return f"❌ Error: {result['error']}"
|
| 64 |
+
|
| 65 |
+
if result["match"]:
|
| 66 |
+
result_text = f"✅ Same speaker detected. Similarity: {result['similarity']} (Threshold: {result['threshold']})"
|
| 67 |
+
last_voice_result = result_text
|
| 68 |
+
return result_text
|
| 69 |
+
else:
|
| 70 |
+
result_text = f"❌ Different speakers. Similarity: {result['similarity']} (Threshold: {result['threshold']})"
|
| 71 |
+
last_voice_result = result_text
|
| 72 |
+
return result_text
|
| 73 |
+
except Exception as e:
|
| 74 |
+
return f"❌ Error reading audio files: {str(e)}"
|
| 75 |
+
|
| 76 |
+
|
| 77 |
+
def scan_video(video_file: str, ref_img: str, youtube_url="") -> str:
|
| 78 |
+
"""Use this tool to scan a video for deepfake face swaps
|
| 79 |
+
Args:
|
| 80 |
+
video_file: The path to the video file
|
| 81 |
+
ref_img: The path to the reference image
|
| 82 |
+
youtube_url: The YouTube URL (optional)
|
| 83 |
+
"""
|
| 84 |
+
global last_video_results
|
| 85 |
+
|
| 86 |
+
if youtube_url:
|
| 87 |
+
try:
|
| 88 |
+
video_file = download_youtube_video(youtube_url)
|
| 89 |
+
except Exception as e:
|
| 90 |
+
return f"❌ Error downloading YouTube video: {str(e)}"
|
| 91 |
+
|
| 92 |
+
with open(video_file, "rb") as vf, open(ref_img, "rb") as rf:
|
| 93 |
+
video_bytes = vf.read()
|
| 94 |
+
ref_img_bytes = rf.read()
|
| 95 |
+
try:
|
| 96 |
+
results = verify_faces_in_video_remote.remote(video_bytes, ref_img_bytes, interval=30)
|
| 97 |
+
|
| 98 |
+
except Exception as e:
|
| 99 |
+
return f"❌ Error processing video: {str(e)}"
|
| 100 |
+
|
| 101 |
+
report = ""
|
| 102 |
+
last_video_results = results
|
| 103 |
+
for r in results:
|
| 104 |
+
if "error" in r:
|
| 105 |
+
report += f"\n⚠️ Frame {r['frame']}: {r['error']}"
|
| 106 |
+
|
| 107 |
+
else:
|
| 108 |
+
status = "✅ Match" if r["verified"] else "❌ Mismatch"
|
| 109 |
+
report += f"\n🖼 Frame {r['frame']}: {status} (Distance: {r['distance']})"
|
| 110 |
+
|
| 111 |
+
return report
|
| 112 |
+
|
| 113 |
+
|
| 114 |
+
|
| 115 |
+
def generate_report():
|
| 116 |
+
return generate_pdf_report(last_face_result, last_voice_result, last_video_results)
|
uv.lock
CHANGED
|
@@ -100,6 +100,18 @@ wheels = [
|
|
| 100 |
{ url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl", hash = "sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5", size = 7597, upload-time = "2024-12-13T17:10:38.469Z" },
|
| 101 |
]
|
| 102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 103 |
[[package]]
|
| 104 |
name = "annotated-types"
|
| 105 |
version = "0.7.0"
|
|
@@ -109,6 +121,33 @@ wheels = [
|
|
| 109 |
{ url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
|
| 110 |
]
|
| 111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 112 |
[[package]]
|
| 113 |
name = "anyio"
|
| 114 |
version = "4.9.0"
|
|
@@ -194,6 +233,22 @@ wheels = [
|
|
| 194 |
{ url = "https://files.pythonhosted.org/packages/57/8d/30aa32745af16af0a9a650115fbe81bde7c610ed5c21b381fca0196f3a7f/audioread-3.0.1-py3-none-any.whl", hash = "sha256:4cdce70b8adc0da0a3c9e0d85fb10b3ace30fbdf8d1670fd443929b61d117c33", size = 23492, upload-time = "2023-09-27T19:27:51.334Z" },
|
| 195 |
]
|
| 196 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 197 |
[[package]]
|
| 198 |
name = "beautifulsoup4"
|
| 199 |
version = "4.13.4"
|
|
@@ -216,6 +271,43 @@ wheels = [
|
|
| 216 |
{ url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc", size = 8458, upload-time = "2024-11-08T17:25:46.184Z" },
|
| 217 |
]
|
| 218 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 219 |
[[package]]
|
| 220 |
name = "certifi"
|
| 221 |
version = "2025.4.26"
|
|
@@ -314,6 +406,19 @@ wheels = [
|
|
| 314 |
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
|
| 315 |
]
|
| 316 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 317 |
[[package]]
|
| 318 |
name = "decorator"
|
| 319 |
version = "5.2.1"
|
|
@@ -354,9 +459,12 @@ name = "deepfake-watchdog"
|
|
| 354 |
version = "0.1.0"
|
| 355 |
source = { virtual = "." }
|
| 356 |
dependencies = [
|
|
|
|
| 357 |
{ name = "deepface" },
|
| 358 |
{ name = "fpdf" },
|
| 359 |
{ name = "gradio", extra = ["mcp"] },
|
|
|
|
|
|
|
| 360 |
{ name = "modal" },
|
| 361 |
{ name = "opencv-python-headless" },
|
| 362 |
{ name = "pydub" },
|
|
@@ -367,9 +475,12 @@ dependencies = [
|
|
| 367 |
|
| 368 |
[package.metadata]
|
| 369 |
requires-dist = [
|
|
|
|
| 370 |
{ name = "deepface", specifier = ">=0.0.93" },
|
| 371 |
{ name = "fpdf", specifier = ">=1.7.2" },
|
| 372 |
{ name = "gradio", extras = ["mcp"], specifier = ">=5.32.1" },
|
|
|
|
|
|
|
| 373 |
{ name = "modal", specifier = ">=1.0.3" },
|
| 374 |
{ name = "opencv-python-headless", specifier = ">=4.11.0.86" },
|
| 375 |
{ name = "pydub", specifier = ">=0.25.1" },
|
|
@@ -378,6 +489,36 @@ requires-dist = [
|
|
| 378 |
{ name = "yt-dlp", specifier = ">=2025.5.22" },
|
| 379 |
]
|
| 380 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 381 |
[[package]]
|
| 382 |
name = "fastapi"
|
| 383 |
version = "0.115.12"
|
|
@@ -410,6 +551,15 @@ wheels = [
|
|
| 410 |
{ url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl", hash = "sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de", size = 16215, upload-time = "2025-03-14T07:11:39.145Z" },
|
| 411 |
]
|
| 412 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 413 |
[[package]]
|
| 414 |
name = "fire"
|
| 415 |
version = "0.7.0"
|
|
@@ -557,6 +707,25 @@ wheels = [
|
|
| 557 |
{ url = "https://files.pythonhosted.org/packages/54/70/e07c381e6488a77094f04c85c9caf1c8008cdc30778f7019bc52e5285ef0/gdown-5.2.0-py3-none-any.whl", hash = "sha256:33083832d82b1101bdd0e9df3edd0fbc0e1c5f14c9d8c38d2a35bf1683b526d6", size = 18235, upload-time = "2024-05-12T06:45:10.017Z" },
|
| 558 |
]
|
| 559 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 560 |
[[package]]
|
| 561 |
name = "google-pasta"
|
| 562 |
version = "0.2.0"
|
|
@@ -632,6 +801,51 @@ wheels = [
|
|
| 632 |
{ url = "https://files.pythonhosted.org/packages/9b/1b/b372308c263379ae3ebc440512432979458330113bdee26cef86c89bf48e/gradio_client-1.10.2-py3-none-any.whl", hash = "sha256:6de67b6224123d264c7887caa0586b2a9e2c369ec32ca38927cf8a841694edcd", size = 323311, upload-time = "2025-05-30T13:59:54.555Z" },
|
| 633 |
]
|
| 634 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 635 |
[[package]]
|
| 636 |
name = "groovy"
|
| 637 |
version = "0.1.2"
|
|
@@ -853,6 +1067,63 @@ wheels = [
|
|
| 853 |
{ url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" },
|
| 854 |
]
|
| 855 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 856 |
[[package]]
|
| 857 |
name = "joblib"
|
| 858 |
version = "1.5.1"
|
|
@@ -936,6 +1207,257 @@ wheels = [
|
|
| 936 |
{ url = "https://files.pythonhosted.org/packages/b5/ba/c63c5786dfee4c3417094c4b00966e61e4a63efecee22cb7b4c0387dda83/librosa-0.11.0-py3-none-any.whl", hash = "sha256:0b6415c4fd68bff4c29288abe67c6d80b587e0e1e2cfb0aad23e4559504a7fa1", size = 260749, upload-time = "2025-03-11T15:09:52.982Z" },
|
| 937 |
]
|
| 938 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 939 |
[[package]]
|
| 940 |
name = "llvmlite"
|
| 941 |
version = "0.44.0"
|
|
@@ -1037,6 +1559,18 @@ wheels = [
|
|
| 1037 |
{ url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" },
|
| 1038 |
]
|
| 1039 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1040 |
[[package]]
|
| 1041 |
name = "mcp"
|
| 1042 |
version = "1.9.0"
|
|
@@ -1224,6 +1758,15 @@ wheels = [
|
|
| 1224 |
{ url = "https://files.pythonhosted.org/packages/84/5d/e17845bb0fa76334477d5de38654d27946d5b5d3695443987a094a71b440/multidict-6.4.4-py3-none-any.whl", hash = "sha256:bd4557071b561a8b3b6075c3ce93cf9bfb6182cb241805c3d66ced3b75eff4ac", size = 10481, upload-time = "2025-05-19T14:16:36.024Z" },
|
| 1225 |
]
|
| 1226 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1227 |
[[package]]
|
| 1228 |
name = "namex"
|
| 1229 |
version = "0.1.0"
|
|
@@ -1233,6 +1776,15 @@ wheels = [
|
|
| 1233 |
{ url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl", hash = "sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c", size = 5905, upload-time = "2025-05-26T23:17:37.695Z" },
|
| 1234 |
]
|
| 1235 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1236 |
[[package]]
|
| 1237 |
name = "networkx"
|
| 1238 |
version = "3.5"
|
|
@@ -1242,6 +1794,21 @@ wheels = [
|
|
| 1242 |
{ url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl", hash = "sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec", size = 2034406, upload-time = "2025-05-29T11:35:04.961Z" },
|
| 1243 |
]
|
| 1244 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1245 |
[[package]]
|
| 1246 |
name = "numba"
|
| 1247 |
version = "0.61.2"
|
|
@@ -1435,6 +2002,25 @@ wheels = [
|
|
| 1435 |
{ url = "https://files.pythonhosted.org/packages/9e/4e/0d0c945463719429b7bd21dece907ad0bde437a2ff12b9b12fee94722ab0/nvidia_nvtx_cu12-12.6.77-py3-none-manylinux2014_x86_64.whl", hash = "sha256:6574241a3ec5fdc9334353ab8c479fe75841dbe8f4532a8fc97ce63503330ba1", size = 89265, upload-time = "2024-10-01T17:00:38.172Z" },
|
| 1436 |
]
|
| 1437 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1438 |
[[package]]
|
| 1439 |
name = "opencv-python"
|
| 1440 |
version = "4.11.0.86"
|
|
@@ -1735,6 +2321,27 @@ wheels = [
|
|
| 1735 |
{ url = "https://files.pythonhosted.org/packages/7e/cc/7e77861000a0691aeea8f4566e5d3aa716f2b1dece4a24439437e41d3d25/protobuf-5.29.5-py3-none-any.whl", hash = "sha256:6cf42630262c59b2d8de33954443d94b746c952b01434fc58a417fdbd2e84bd5", size = 172823, upload-time = "2025-05-28T23:51:58.157Z" },
|
| 1736 |
]
|
| 1737 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1738 |
[[package]]
|
| 1739 |
name = "pycparser"
|
| 1740 |
version = "2.22"
|
|
@@ -1833,6 +2440,15 @@ wheels = [
|
|
| 1833 |
{ url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c", size = 1225293, upload-time = "2025-01-06T17:26:25.553Z" },
|
| 1834 |
]
|
| 1835 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1836 |
[[package]]
|
| 1837 |
name = "pysocks"
|
| 1838 |
version = "1.7.1"
|
|
@@ -1907,6 +2523,44 @@ wheels = [
|
|
| 1907 |
{ url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446, upload-time = "2024-08-06T20:33:04.33Z" },
|
| 1908 |
]
|
| 1909 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1910 |
[[package]]
|
| 1911 |
name = "requests"
|
| 1912 |
version = "2.32.3"
|
|
@@ -1973,6 +2627,18 @@ wheels = [
|
|
| 1973 |
{ url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl", hash = "sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0", size = 243229, upload-time = "2025-03-30T14:15:12.283Z" },
|
| 1974 |
]
|
| 1975 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1976 |
[[package]]
|
| 1977 |
name = "ruff"
|
| 1978 |
version = "0.11.12"
|
|
@@ -1998,6 +2664,18 @@ wheels = [
|
|
| 1998 |
{ url = "https://files.pythonhosted.org/packages/44/42/d58086ec20f52d2b0140752ae54b355ea2be2ed46f914231136dd1effcc7/ruff-0.11.12-py3-none-win_arm64.whl", hash = "sha256:65194e37853158d368e333ba282217941029a28ea90913c67e558c611d04daa5", size = 10697770, upload-time = "2025-05-29T13:31:38.009Z" },
|
| 1999 |
]
|
| 2000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2001 |
[[package]]
|
| 2002 |
name = "safehttpx"
|
| 2003 |
version = "0.1.6"
|
|
@@ -2177,6 +2855,40 @@ wheels = [
|
|
| 2177 |
{ url = "https://files.pythonhosted.org/packages/bc/10/440f1ba3d4955e0dc740bbe4ce8968c254a3d644d013eb75eea729becdb8/soxr-0.5.0.post1-cp312-abi3-win_amd64.whl", hash = "sha256:b1be9fee90afb38546bdbd7bde714d1d9a8c5a45137f97478a83b65e7f3146f6", size = 164937, upload-time = "2024-08-31T03:43:23.671Z" },
|
| 2178 |
]
|
| 2179 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2180 |
[[package]]
|
| 2181 |
name = "sse-starlette"
|
| 2182 |
version = "2.3.6"
|
|
@@ -2235,6 +2947,15 @@ wheels = [
|
|
| 2235 |
{ url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl", hash = "sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35", size = 72037, upload-time = "2025-04-13T13:56:16.21Z" },
|
| 2236 |
]
|
| 2237 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2238 |
[[package]]
|
| 2239 |
name = "sympy"
|
| 2240 |
version = "1.14.0"
|
|
@@ -2260,6 +2981,15 @@ wheels = [
|
|
| 2260 |
{ url = "https://files.pythonhosted.org/packages/35/8a/fd0a54e4bc7d09e6296efc7e9712f16e0001e82a13a90acb1e5729d34b39/synchronicity-0.9.13-py3-none-any.whl", hash = "sha256:762bb5f84def464b2c7dbb944d4f19c3336a12ed7046bc5d9646f0b4a3f6a0d5", size = 36974, upload-time = "2025-06-04T13:31:52.341Z" },
|
| 2261 |
]
|
| 2262 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2263 |
[[package]]
|
| 2264 |
name = "tensorboard"
|
| 2265 |
version = "2.19.0"
|
|
@@ -2354,6 +3084,30 @@ wheels = [
|
|
| 2354 |
{ url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl", hash = "sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb", size = 18638, upload-time = "2025-03-13T13:49:21.846Z" },
|
| 2355 |
]
|
| 2356 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2357 |
[[package]]
|
| 2358 |
name = "toml"
|
| 2359 |
version = "0.10.2"
|
|
@@ -2491,6 +3245,19 @@ wheels = [
|
|
| 2491 |
{ url = "https://files.pythonhosted.org/packages/69/e0/552843e0d356fbb5256d21449fa957fa4eff3bbc135a74a691ee70c7c5da/typing_extensions-4.14.0-py3-none-any.whl", hash = "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af", size = 43839, upload-time = "2025-06-02T14:52:10.026Z" },
|
| 2492 |
]
|
| 2493 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2494 |
[[package]]
|
| 2495 |
name = "typing-inspection"
|
| 2496 |
version = "0.4.1"
|
|
|
|
| 100 |
{ url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl", hash = "sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5", size = 7597, upload-time = "2024-12-13T17:10:38.469Z" },
|
| 101 |
]
|
| 102 |
|
| 103 |
+
[[package]]
|
| 104 |
+
name = "aiosqlite"
|
| 105 |
+
version = "0.21.0"
|
| 106 |
+
source = { registry = "https://pypi.org/simple" }
|
| 107 |
+
dependencies = [
|
| 108 |
+
{ name = "typing-extensions" },
|
| 109 |
+
]
|
| 110 |
+
sdist = { url = "https://files.pythonhosted.org/packages/13/7d/8bca2bf9a247c2c5dfeec1d7a5f40db6518f88d314b8bca9da29670d2671/aiosqlite-0.21.0.tar.gz", hash = "sha256:131bb8056daa3bc875608c631c678cda73922a2d4ba8aec373b19f18c17e7aa3", size = 13454, upload-time = "2025-02-03T07:30:16.235Z" }
|
| 111 |
+
wheels = [
|
| 112 |
+
{ url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl", hash = "sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0", size = 15792, upload-time = "2025-02-03T07:30:13.6Z" },
|
| 113 |
+
]
|
| 114 |
+
|
| 115 |
[[package]]
|
| 116 |
name = "annotated-types"
|
| 117 |
version = "0.7.0"
|
|
|
|
| 121 |
{ url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
|
| 122 |
]
|
| 123 |
|
| 124 |
+
[[package]]
|
| 125 |
+
name = "anthropic"
|
| 126 |
+
version = "0.53.0"
|
| 127 |
+
source = { registry = "https://pypi.org/simple" }
|
| 128 |
+
dependencies = [
|
| 129 |
+
{ name = "anyio" },
|
| 130 |
+
{ name = "distro" },
|
| 131 |
+
{ name = "httpx" },
|
| 132 |
+
{ name = "jiter" },
|
| 133 |
+
{ name = "pydantic" },
|
| 134 |
+
{ name = "sniffio" },
|
| 135 |
+
{ name = "typing-extensions" },
|
| 136 |
+
]
|
| 137 |
+
sdist = { url = "https://files.pythonhosted.org/packages/c1/f6/a78ff9e23981fde136c3ae5427a39b27df92ebe5e5997c6203796449f1e5/anthropic-0.53.0.tar.gz", hash = "sha256:f5d1499fc45b2e05801fcbbeae25679f72f7479763e3c706126a7a7c8de06eff", size = 307716, upload-time = "2025-06-09T16:20:31.689Z" }
|
| 138 |
+
wheels = [
|
| 139 |
+
{ url = "https://files.pythonhosted.org/packages/a9/3f/82c21f74afa3541d69d20b8265c7fdfd078a687e9eea48fda30f1838d0b7/anthropic-0.53.0-py3-none-any.whl", hash = "sha256:b3a84751885a81d96bbddef180c3ce559c9140f7f230cdd825385405bd6d312e", size = 287248, upload-time = "2025-06-09T16:20:29.98Z" },
|
| 140 |
+
]
|
| 141 |
+
|
| 142 |
+
[package.optional-dependencies]
|
| 143 |
+
bedrock = [
|
| 144 |
+
{ name = "boto3" },
|
| 145 |
+
{ name = "botocore" },
|
| 146 |
+
]
|
| 147 |
+
vertex = [
|
| 148 |
+
{ name = "google-auth", extra = ["requests"] },
|
| 149 |
+
]
|
| 150 |
+
|
| 151 |
[[package]]
|
| 152 |
name = "anyio"
|
| 153 |
version = "4.9.0"
|
|
|
|
| 233 |
{ url = "https://files.pythonhosted.org/packages/57/8d/30aa32745af16af0a9a650115fbe81bde7c610ed5c21b381fca0196f3a7f/audioread-3.0.1-py3-none-any.whl", hash = "sha256:4cdce70b8adc0da0a3c9e0d85fb10b3ace30fbdf8d1670fd443929b61d117c33", size = 23492, upload-time = "2023-09-27T19:27:51.334Z" },
|
| 234 |
]
|
| 235 |
|
| 236 |
+
[[package]]
|
| 237 |
+
name = "banks"
|
| 238 |
+
version = "2.1.2"
|
| 239 |
+
source = { registry = "https://pypi.org/simple" }
|
| 240 |
+
dependencies = [
|
| 241 |
+
{ name = "deprecated" },
|
| 242 |
+
{ name = "griffe" },
|
| 243 |
+
{ name = "jinja2" },
|
| 244 |
+
{ name = "platformdirs" },
|
| 245 |
+
{ name = "pydantic" },
|
| 246 |
+
]
|
| 247 |
+
sdist = { url = "https://files.pythonhosted.org/packages/77/34/2b6697f02ffb68bee50e5fd37d6c64432244d3245603fd62950169dfed7e/banks-2.1.2.tar.gz", hash = "sha256:a0651db9d14b57fa2e115e78f68dbb1b36fe226ad6eef96192542908b1d20c1f", size = 173332, upload-time = "2025-04-20T07:09:21.674Z" }
|
| 248 |
+
wheels = [
|
| 249 |
+
{ url = "https://files.pythonhosted.org/packages/04/4a/7fdca29d1db62f5f5c3446bf8f668beacdb0b5a8aff4247574ddfddc6bcd/banks-2.1.2-py3-none-any.whl", hash = "sha256:7fba451069f6bea376483b8136a0f29cb1e6883133626d00e077e20a3d102c0e", size = 28064, upload-time = "2025-04-20T07:09:20.201Z" },
|
| 250 |
+
]
|
| 251 |
+
|
| 252 |
[[package]]
|
| 253 |
name = "beautifulsoup4"
|
| 254 |
version = "4.13.4"
|
|
|
|
| 271 |
{ url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc", size = 8458, upload-time = "2024-11-08T17:25:46.184Z" },
|
| 272 |
]
|
| 273 |
|
| 274 |
+
[[package]]
|
| 275 |
+
name = "boto3"
|
| 276 |
+
version = "1.38.33"
|
| 277 |
+
source = { registry = "https://pypi.org/simple" }
|
| 278 |
+
dependencies = [
|
| 279 |
+
{ name = "botocore" },
|
| 280 |
+
{ name = "jmespath" },
|
| 281 |
+
{ name = "s3transfer" },
|
| 282 |
+
]
|
| 283 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ad/95/99046c55799732d97b0f9a0bb99b64760f07dd55ac793393a6c4e847d8d6/boto3-1.38.33.tar.gz", hash = "sha256:6467909c1ae01ff67981f021bb2568592211765ec8a9a1d2c4529191e46c3541", size = 111825, upload-time = "2025-06-09T19:24:16.167Z" }
|
| 284 |
+
wheels = [
|
| 285 |
+
{ url = "https://files.pythonhosted.org/packages/96/7e/b3eb354e82f5a2a8ae1977f983f0cb6005b2e5fae79b7d06bd5a14b4e9c6/boto3-1.38.33-py3-none-any.whl", hash = "sha256:25d0717489c658f7ae6c3c7f0f7e1b4d611b30b2f08f0fcef6455ac6864a8768", size = 139937, upload-time = "2025-06-09T19:24:12.774Z" },
|
| 286 |
+
]
|
| 287 |
+
|
| 288 |
+
[[package]]
|
| 289 |
+
name = "botocore"
|
| 290 |
+
version = "1.38.33"
|
| 291 |
+
source = { registry = "https://pypi.org/simple" }
|
| 292 |
+
dependencies = [
|
| 293 |
+
{ name = "jmespath" },
|
| 294 |
+
{ name = "python-dateutil" },
|
| 295 |
+
{ name = "urllib3" },
|
| 296 |
+
]
|
| 297 |
+
sdist = { url = "https://files.pythonhosted.org/packages/9d/aa/1521d7e1dcb76af8dca81539eec141ee3581a32e0dc1f31d092b59feb06a/botocore-1.38.33.tar.gz", hash = "sha256:dbe8fea9d0426c644c89ef2018ead886ccbcc22901a02b377b4e65ce1cb69a2b", size = 13953431, upload-time = "2025-06-09T19:24:03.916Z" }
|
| 298 |
+
wheels = [
|
| 299 |
+
{ url = "https://files.pythonhosted.org/packages/c1/5a/253b707c29283a5d8516448da4febe017bcec0b7ed109981250d1b5f5347/botocore-1.38.33-py3-none-any.whl", hash = "sha256:ad25233e93dcebe95809b1f9393c1f11a639696327793d166295fb78dd7bc597", size = 13614262, upload-time = "2025-06-09T19:24:00.393Z" },
|
| 300 |
+
]
|
| 301 |
+
|
| 302 |
+
[[package]]
|
| 303 |
+
name = "cachetools"
|
| 304 |
+
version = "5.5.2"
|
| 305 |
+
source = { registry = "https://pypi.org/simple" }
|
| 306 |
+
sdist = { url = "https://files.pythonhosted.org/packages/6c/81/3747dad6b14fa2cf53fcf10548cf5aea6913e96fab41a3c198676f8948a5/cachetools-5.5.2.tar.gz", hash = "sha256:1a661caa9175d26759571b2e19580f9d6393969e5dfca11fdb1f947a23e640d4", size = 28380, upload-time = "2025-02-20T21:01:19.524Z" }
|
| 307 |
+
wheels = [
|
| 308 |
+
{ url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl", hash = "sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a", size = 10080, upload-time = "2025-02-20T21:01:16.647Z" },
|
| 309 |
+
]
|
| 310 |
+
|
| 311 |
[[package]]
|
| 312 |
name = "certifi"
|
| 313 |
version = "2025.4.26"
|
|
|
|
| 406 |
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
|
| 407 |
]
|
| 408 |
|
| 409 |
+
[[package]]
|
| 410 |
+
name = "dataclasses-json"
|
| 411 |
+
version = "0.6.7"
|
| 412 |
+
source = { registry = "https://pypi.org/simple" }
|
| 413 |
+
dependencies = [
|
| 414 |
+
{ name = "marshmallow" },
|
| 415 |
+
{ name = "typing-inspect" },
|
| 416 |
+
]
|
| 417 |
+
sdist = { url = "https://files.pythonhosted.org/packages/64/a4/f71d9cf3a5ac257c993b5ca3f93df5f7fb395c725e7f1e6479d2514173c3/dataclasses_json-0.6.7.tar.gz", hash = "sha256:b6b3e528266ea45b9535223bc53ca645f5208833c29229e847b3f26a1cc55fc0", size = 32227, upload-time = "2024-06-09T16:20:19.103Z" }
|
| 418 |
+
wheels = [
|
| 419 |
+
{ url = "https://files.pythonhosted.org/packages/c3/be/d0d44e092656fe7a06b55e6103cbce807cdbdee17884a5367c68c9860853/dataclasses_json-0.6.7-py3-none-any.whl", hash = "sha256:0dbf33f26c8d5305befd61b39d2b3414e8a407bedc2834dea9b8d642666fb40a", size = 28686, upload-time = "2024-06-09T16:20:16.715Z" },
|
| 420 |
+
]
|
| 421 |
+
|
| 422 |
[[package]]
|
| 423 |
name = "decorator"
|
| 424 |
version = "5.2.1"
|
|
|
|
| 459 |
version = "0.1.0"
|
| 460 |
source = { virtual = "." }
|
| 461 |
dependencies = [
|
| 462 |
+
{ name = "anthropic" },
|
| 463 |
{ name = "deepface" },
|
| 464 |
{ name = "fpdf" },
|
| 465 |
{ name = "gradio", extra = ["mcp"] },
|
| 466 |
+
{ name = "llama-index" },
|
| 467 |
+
{ name = "llama-index-llms-anthropic" },
|
| 468 |
{ name = "modal" },
|
| 469 |
{ name = "opencv-python-headless" },
|
| 470 |
{ name = "pydub" },
|
|
|
|
| 475 |
|
| 476 |
[package.metadata]
|
| 477 |
requires-dist = [
|
| 478 |
+
{ name = "anthropic", specifier = ">=0.53.0" },
|
| 479 |
{ name = "deepface", specifier = ">=0.0.93" },
|
| 480 |
{ name = "fpdf", specifier = ">=1.7.2" },
|
| 481 |
{ name = "gradio", extras = ["mcp"], specifier = ">=5.32.1" },
|
| 482 |
+
{ name = "llama-index", specifier = ">=0.12.41" },
|
| 483 |
+
{ name = "llama-index-llms-anthropic", specifier = ">=0.7.2" },
|
| 484 |
{ name = "modal", specifier = ">=1.0.3" },
|
| 485 |
{ name = "opencv-python-headless", specifier = ">=4.11.0.86" },
|
| 486 |
{ name = "pydub", specifier = ">=0.25.1" },
|
|
|
|
| 489 |
{ name = "yt-dlp", specifier = ">=2025.5.22" },
|
| 490 |
]
|
| 491 |
|
| 492 |
+
[[package]]
|
| 493 |
+
name = "deprecated"
|
| 494 |
+
version = "1.2.18"
|
| 495 |
+
source = { registry = "https://pypi.org/simple" }
|
| 496 |
+
dependencies = [
|
| 497 |
+
{ name = "wrapt" },
|
| 498 |
+
]
|
| 499 |
+
sdist = { url = "https://files.pythonhosted.org/packages/98/97/06afe62762c9a8a86af0cfb7bfdab22a43ad17138b07af5b1a58442690a2/deprecated-1.2.18.tar.gz", hash = "sha256:422b6f6d859da6f2ef57857761bfb392480502a64c3028ca9bbe86085d72115d", size = 2928744, upload-time = "2025-01-27T10:46:25.7Z" }
|
| 500 |
+
wheels = [
|
| 501 |
+
{ url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl", hash = "sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec", size = 9998, upload-time = "2025-01-27T10:46:09.186Z" },
|
| 502 |
+
]
|
| 503 |
+
|
| 504 |
+
[[package]]
|
| 505 |
+
name = "dirtyjson"
|
| 506 |
+
version = "1.0.8"
|
| 507 |
+
source = { registry = "https://pypi.org/simple" }
|
| 508 |
+
sdist = { url = "https://files.pythonhosted.org/packages/db/04/d24f6e645ad82ba0ef092fa17d9ef7a21953781663648a01c9371d9e8e98/dirtyjson-1.0.8.tar.gz", hash = "sha256:90ca4a18f3ff30ce849d100dcf4a003953c79d3a2348ef056f1d9c22231a25fd", size = 30782, upload-time = "2022-11-28T23:32:33.319Z" }
|
| 509 |
+
wheels = [
|
| 510 |
+
{ url = "https://files.pythonhosted.org/packages/68/69/1bcf70f81de1b4a9f21b3a62ec0c83bdff991c88d6cc2267d02408457e88/dirtyjson-1.0.8-py3-none-any.whl", hash = "sha256:125e27248435a58acace26d5c2c4c11a1c0de0a9c5124c5a94ba78e517d74f53", size = 25197, upload-time = "2022-11-28T23:32:31.219Z" },
|
| 511 |
+
]
|
| 512 |
+
|
| 513 |
+
[[package]]
|
| 514 |
+
name = "distro"
|
| 515 |
+
version = "1.9.0"
|
| 516 |
+
source = { registry = "https://pypi.org/simple" }
|
| 517 |
+
sdist = { url = "https://files.pythonhosted.org/packages/fc/f8/98eea607f65de6527f8a2e8885fc8015d3e6f5775df186e443e0964a11c3/distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed", size = 60722, upload-time = "2023-12-24T09:54:32.31Z" }
|
| 518 |
+
wheels = [
|
| 519 |
+
{ url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2", size = 20277, upload-time = "2023-12-24T09:54:30.421Z" },
|
| 520 |
+
]
|
| 521 |
+
|
| 522 |
[[package]]
|
| 523 |
name = "fastapi"
|
| 524 |
version = "0.115.12"
|
|
|
|
| 551 |
{ url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl", hash = "sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de", size = 16215, upload-time = "2025-03-14T07:11:39.145Z" },
|
| 552 |
]
|
| 553 |
|
| 554 |
+
[[package]]
|
| 555 |
+
name = "filetype"
|
| 556 |
+
version = "1.2.0"
|
| 557 |
+
source = { registry = "https://pypi.org/simple" }
|
| 558 |
+
sdist = { url = "https://files.pythonhosted.org/packages/bb/29/745f7d30d47fe0f251d3ad3dc2978a23141917661998763bebb6da007eb1/filetype-1.2.0.tar.gz", hash = "sha256:66b56cd6474bf41d8c54660347d37afcc3f7d1970648de365c102ef77548aadb", size = 998020, upload-time = "2022-11-02T17:34:04.141Z" }
|
| 559 |
+
wheels = [
|
| 560 |
+
{ url = "https://files.pythonhosted.org/packages/18/79/1b8fa1bb3568781e84c9200f951c735f3f157429f44be0495da55894d620/filetype-1.2.0-py2.py3-none-any.whl", hash = "sha256:7ce71b6880181241cf7ac8697a2f1eb6a8bd9b429f7ad6d27b8db9ba5f1c2d25", size = 19970, upload-time = "2022-11-02T17:34:01.425Z" },
|
| 561 |
+
]
|
| 562 |
+
|
| 563 |
[[package]]
|
| 564 |
name = "fire"
|
| 565 |
version = "0.7.0"
|
|
|
|
| 707 |
{ url = "https://files.pythonhosted.org/packages/54/70/e07c381e6488a77094f04c85c9caf1c8008cdc30778f7019bc52e5285ef0/gdown-5.2.0-py3-none-any.whl", hash = "sha256:33083832d82b1101bdd0e9df3edd0fbc0e1c5f14c9d8c38d2a35bf1683b526d6", size = 18235, upload-time = "2024-05-12T06:45:10.017Z" },
|
| 708 |
]
|
| 709 |
|
| 710 |
+
[[package]]
|
| 711 |
+
name = "google-auth"
|
| 712 |
+
version = "2.40.3"
|
| 713 |
+
source = { registry = "https://pypi.org/simple" }
|
| 714 |
+
dependencies = [
|
| 715 |
+
{ name = "cachetools" },
|
| 716 |
+
{ name = "pyasn1-modules" },
|
| 717 |
+
{ name = "rsa" },
|
| 718 |
+
]
|
| 719 |
+
sdist = { url = "https://files.pythonhosted.org/packages/9e/9b/e92ef23b84fa10a64ce4831390b7a4c2e53c0132568d99d4ae61d04c8855/google_auth-2.40.3.tar.gz", hash = "sha256:500c3a29adedeb36ea9cf24b8d10858e152f2412e3ca37829b3fa18e33d63b77", size = 281029, upload-time = "2025-06-04T18:04:57.577Z" }
|
| 720 |
+
wheels = [
|
| 721 |
+
{ url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl", hash = "sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca", size = 216137, upload-time = "2025-06-04T18:04:55.573Z" },
|
| 722 |
+
]
|
| 723 |
+
|
| 724 |
+
[package.optional-dependencies]
|
| 725 |
+
requests = [
|
| 726 |
+
{ name = "requests" },
|
| 727 |
+
]
|
| 728 |
+
|
| 729 |
[[package]]
|
| 730 |
name = "google-pasta"
|
| 731 |
version = "0.2.0"
|
|
|
|
| 801 |
{ url = "https://files.pythonhosted.org/packages/9b/1b/b372308c263379ae3ebc440512432979458330113bdee26cef86c89bf48e/gradio_client-1.10.2-py3-none-any.whl", hash = "sha256:6de67b6224123d264c7887caa0586b2a9e2c369ec32ca38927cf8a841694edcd", size = 323311, upload-time = "2025-05-30T13:59:54.555Z" },
|
| 802 |
]
|
| 803 |
|
| 804 |
+
[[package]]
|
| 805 |
+
name = "greenlet"
|
| 806 |
+
version = "3.2.3"
|
| 807 |
+
source = { registry = "https://pypi.org/simple" }
|
| 808 |
+
sdist = { url = "https://files.pythonhosted.org/packages/c9/92/bb85bd6e80148a4d2e0c59f7c0c2891029f8fd510183afc7d8d2feeed9b6/greenlet-3.2.3.tar.gz", hash = "sha256:8b0dd8ae4c0d6f5e54ee55ba935eeb3d735a9b58a8a1e5b5cbab64e01a39f365", size = 185752, upload-time = "2025-06-05T16:16:09.955Z" }
|
| 809 |
+
wheels = [
|
| 810 |
+
{ url = "https://files.pythonhosted.org/packages/f3/94/ad0d435f7c48debe960c53b8f60fb41c2026b1d0fa4a99a1cb17c3461e09/greenlet-3.2.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:25ad29caed5783d4bd7a85c9251c651696164622494c00802a139c00d639242d", size = 271992, upload-time = "2025-06-05T16:11:23.467Z" },
|
| 811 |
+
{ url = "https://files.pythonhosted.org/packages/93/5d/7c27cf4d003d6e77749d299c7c8f5fd50b4f251647b5c2e97e1f20da0ab5/greenlet-3.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:88cd97bf37fe24a6710ec6a3a7799f3f81d9cd33317dcf565ff9950c83f55e0b", size = 638820, upload-time = "2025-06-05T16:38:52.882Z" },
|
| 812 |
+
{ url = "https://files.pythonhosted.org/packages/c6/7e/807e1e9be07a125bb4c169144937910bf59b9d2f6d931578e57f0bce0ae2/greenlet-3.2.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:baeedccca94880d2f5666b4fa16fc20ef50ba1ee353ee2d7092b383a243b0b0d", size = 653046, upload-time = "2025-06-05T16:41:36.343Z" },
|
| 813 |
+
{ url = "https://files.pythonhosted.org/packages/9d/ab/158c1a4ea1068bdbc78dba5a3de57e4c7aeb4e7fa034320ea94c688bfb61/greenlet-3.2.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:be52af4b6292baecfa0f397f3edb3c6092ce071b499dd6fe292c9ac9f2c8f264", size = 647701, upload-time = "2025-06-05T16:48:19.604Z" },
|
| 814 |
+
{ url = "https://files.pythonhosted.org/packages/cc/0d/93729068259b550d6a0288da4ff72b86ed05626eaf1eb7c0d3466a2571de/greenlet-3.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0cc73378150b8b78b0c9fe2ce56e166695e67478550769536a6742dca3651688", size = 649747, upload-time = "2025-06-05T16:13:04.628Z" },
|
| 815 |
+
{ url = "https://files.pythonhosted.org/packages/f6/f6/c82ac1851c60851302d8581680573245c8fc300253fc1ff741ae74a6c24d/greenlet-3.2.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:706d016a03e78df129f68c4c9b4c4f963f7d73534e48a24f5f5a7101ed13dbbb", size = 605461, upload-time = "2025-06-05T16:12:50.792Z" },
|
| 816 |
+
{ url = "https://files.pythonhosted.org/packages/98/82/d022cf25ca39cf1200650fc58c52af32c90f80479c25d1cbf57980ec3065/greenlet-3.2.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:419e60f80709510c343c57b4bb5a339d8767bf9aef9b8ce43f4f143240f88b7c", size = 1121190, upload-time = "2025-06-05T16:36:48.59Z" },
|
| 817 |
+
{ url = "https://files.pythonhosted.org/packages/f5/e1/25297f70717abe8104c20ecf7af0a5b82d2f5a980eb1ac79f65654799f9f/greenlet-3.2.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:93d48533fade144203816783373f27a97e4193177ebaaf0fc396db19e5d61163", size = 1149055, upload-time = "2025-06-05T16:12:40.457Z" },
|
| 818 |
+
{ url = "https://files.pythonhosted.org/packages/1f/8f/8f9e56c5e82eb2c26e8cde787962e66494312dc8cb261c460e1f3a9c88bc/greenlet-3.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:7454d37c740bb27bdeddfc3f358f26956a07d5220818ceb467a483197d84f849", size = 297817, upload-time = "2025-06-05T16:29:49.244Z" },
|
| 819 |
+
{ url = "https://files.pythonhosted.org/packages/b1/cf/f5c0b23309070ae93de75c90d29300751a5aacefc0a3ed1b1d8edb28f08b/greenlet-3.2.3-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:500b8689aa9dd1ab26872a34084503aeddefcb438e2e7317b89b11eaea1901ad", size = 270732, upload-time = "2025-06-05T16:10:08.26Z" },
|
| 820 |
+
{ url = "https://files.pythonhosted.org/packages/48/ae/91a957ba60482d3fecf9be49bc3948f341d706b52ddb9d83a70d42abd498/greenlet-3.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:a07d3472c2a93117af3b0136f246b2833fdc0b542d4a9799ae5f41c28323faef", size = 639033, upload-time = "2025-06-05T16:38:53.983Z" },
|
| 821 |
+
{ url = "https://files.pythonhosted.org/packages/6f/df/20ffa66dd5a7a7beffa6451bdb7400d66251374ab40b99981478c69a67a8/greenlet-3.2.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:8704b3768d2f51150626962f4b9a9e4a17d2e37c8a8d9867bbd9fa4eb938d3b3", size = 652999, upload-time = "2025-06-05T16:41:37.89Z" },
|
| 822 |
+
{ url = "https://files.pythonhosted.org/packages/51/b4/ebb2c8cb41e521f1d72bf0465f2f9a2fd803f674a88db228887e6847077e/greenlet-3.2.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:5035d77a27b7c62db6cf41cf786cfe2242644a7a337a0e155c80960598baab95", size = 647368, upload-time = "2025-06-05T16:48:21.467Z" },
|
| 823 |
+
{ url = "https://files.pythonhosted.org/packages/8e/6a/1e1b5aa10dced4ae876a322155705257748108b7fd2e4fae3f2a091fe81a/greenlet-3.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2d8aa5423cd4a396792f6d4580f88bdc6efcb9205891c9d40d20f6e670992efb", size = 650037, upload-time = "2025-06-05T16:13:06.402Z" },
|
| 824 |
+
{ url = "https://files.pythonhosted.org/packages/26/f2/ad51331a157c7015c675702e2d5230c243695c788f8f75feba1af32b3617/greenlet-3.2.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2c724620a101f8170065d7dded3f962a2aea7a7dae133a009cada42847e04a7b", size = 608402, upload-time = "2025-06-05T16:12:51.91Z" },
|
| 825 |
+
{ url = "https://files.pythonhosted.org/packages/26/bc/862bd2083e6b3aff23300900a956f4ea9a4059de337f5c8734346b9b34fc/greenlet-3.2.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:873abe55f134c48e1f2a6f53f7d1419192a3d1a4e873bace00499a4e45ea6af0", size = 1119577, upload-time = "2025-06-05T16:36:49.787Z" },
|
| 826 |
+
{ url = "https://files.pythonhosted.org/packages/86/94/1fc0cc068cfde885170e01de40a619b00eaa8f2916bf3541744730ffb4c3/greenlet-3.2.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:024571bbce5f2c1cfff08bf3fbaa43bbc7444f580ae13b0099e95d0e6e67ed36", size = 1147121, upload-time = "2025-06-05T16:12:42.527Z" },
|
| 827 |
+
{ url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3", size = 297603, upload-time = "2025-06-05T16:20:12.651Z" },
|
| 828 |
+
{ url = "https://files.pythonhosted.org/packages/d8/ca/accd7aa5280eb92b70ed9e8f7fd79dc50a2c21d8c73b9a0856f5b564e222/greenlet-3.2.3-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:3d04332dddb10b4a211b68111dabaee2e1a073663d117dc10247b5b1642bac86", size = 271479, upload-time = "2025-06-05T16:10:47.525Z" },
|
| 829 |
+
{ url = "https://files.pythonhosted.org/packages/55/71/01ed9895d9eb49223280ecc98a557585edfa56b3d0e965b9fa9f7f06b6d9/greenlet-3.2.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8186162dffde068a465deab08fc72c767196895c39db26ab1c17c0b77a6d8b97", size = 683952, upload-time = "2025-06-05T16:38:55.125Z" },
|
| 830 |
+
{ url = "https://files.pythonhosted.org/packages/ea/61/638c4bdf460c3c678a0a1ef4c200f347dff80719597e53b5edb2fb27ab54/greenlet-3.2.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f4bfbaa6096b1b7a200024784217defedf46a07c2eee1a498e94a1b5f8ec5728", size = 696917, upload-time = "2025-06-05T16:41:38.959Z" },
|
| 831 |
+
{ url = "https://files.pythonhosted.org/packages/22/cc/0bd1a7eb759d1f3e3cc2d1bc0f0b487ad3cc9f34d74da4b80f226fde4ec3/greenlet-3.2.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:ed6cfa9200484d234d8394c70f5492f144b20d4533f69262d530a1a082f6ee9a", size = 692443, upload-time = "2025-06-05T16:48:23.113Z" },
|
| 832 |
+
{ url = "https://files.pythonhosted.org/packages/67/10/b2a4b63d3f08362662e89c103f7fe28894a51ae0bc890fabf37d1d780e52/greenlet-3.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:02b0df6f63cd15012bed5401b47829cfd2e97052dc89da3cfaf2c779124eb892", size = 692995, upload-time = "2025-06-05T16:13:07.972Z" },
|
| 833 |
+
{ url = "https://files.pythonhosted.org/packages/5a/c6/ad82f148a4e3ce9564056453a71529732baf5448ad53fc323e37efe34f66/greenlet-3.2.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:86c2d68e87107c1792e2e8d5399acec2487a4e993ab76c792408e59394d52141", size = 655320, upload-time = "2025-06-05T16:12:53.453Z" },
|
| 834 |
+
{ url = "https://files.pythonhosted.org/packages/5c/4f/aab73ecaa6b3086a4c89863d94cf26fa84cbff63f52ce9bc4342b3087a06/greenlet-3.2.3-cp314-cp314-win_amd64.whl", hash = "sha256:8c47aae8fbbfcf82cc13327ae802ba13c9c36753b67e760023fd116bc124a62a", size = 301236, upload-time = "2025-06-05T16:15:20.111Z" },
|
| 835 |
+
]
|
| 836 |
+
|
| 837 |
+
[[package]]
|
| 838 |
+
name = "griffe"
|
| 839 |
+
version = "1.7.3"
|
| 840 |
+
source = { registry = "https://pypi.org/simple" }
|
| 841 |
+
dependencies = [
|
| 842 |
+
{ name = "colorama" },
|
| 843 |
+
]
|
| 844 |
+
sdist = { url = "https://files.pythonhosted.org/packages/a9/3e/5aa9a61f7c3c47b0b52a1d930302992229d191bf4bc76447b324b731510a/griffe-1.7.3.tar.gz", hash = "sha256:52ee893c6a3a968b639ace8015bec9d36594961e156e23315c8e8e51401fa50b", size = 395137, upload-time = "2025-04-23T11:29:09.147Z" }
|
| 845 |
+
wheels = [
|
| 846 |
+
{ url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl", hash = "sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75", size = 129303, upload-time = "2025-04-23T11:29:07.145Z" },
|
| 847 |
+
]
|
| 848 |
+
|
| 849 |
[[package]]
|
| 850 |
name = "groovy"
|
| 851 |
version = "0.1.2"
|
|
|
|
| 1067 |
{ url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" },
|
| 1068 |
]
|
| 1069 |
|
| 1070 |
+
[[package]]
|
| 1071 |
+
name = "jiter"
|
| 1072 |
+
version = "0.10.0"
|
| 1073 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1074 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ee/9d/ae7ddb4b8ab3fb1b51faf4deb36cb48a4fbbd7cb36bad6a5fca4741306f7/jiter-0.10.0.tar.gz", hash = "sha256:07a7142c38aacc85194391108dc91b5b57093c978a9932bd86a36862759d9500", size = 162759, upload-time = "2025-05-18T19:04:59.73Z" }
|
| 1075 |
+
wheels = [
|
| 1076 |
+
{ url = "https://files.pythonhosted.org/packages/6d/b5/348b3313c58f5fbfb2194eb4d07e46a35748ba6e5b3b3046143f3040bafa/jiter-0.10.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:1e274728e4a5345a6dde2d343c8da018b9d4bd4350f5a472fa91f66fda44911b", size = 312262, upload-time = "2025-05-18T19:03:44.637Z" },
|
| 1077 |
+
{ url = "https://files.pythonhosted.org/packages/9c/4a/6a2397096162b21645162825f058d1709a02965606e537e3304b02742e9b/jiter-0.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7202ae396446c988cb2a5feb33a543ab2165b786ac97f53b59aafb803fef0744", size = 320124, upload-time = "2025-05-18T19:03:46.341Z" },
|
| 1078 |
+
{ url = "https://files.pythonhosted.org/packages/2a/85/1ce02cade7516b726dd88f59a4ee46914bf79d1676d1228ef2002ed2f1c9/jiter-0.10.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23ba7722d6748b6920ed02a8f1726fb4b33e0fd2f3f621816a8b486c66410ab2", size = 345330, upload-time = "2025-05-18T19:03:47.596Z" },
|
| 1079 |
+
{ url = "https://files.pythonhosted.org/packages/75/d0/bb6b4f209a77190ce10ea8d7e50bf3725fc16d3372d0a9f11985a2b23eff/jiter-0.10.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:371eab43c0a288537d30e1f0b193bc4eca90439fc08a022dd83e5e07500ed026", size = 369670, upload-time = "2025-05-18T19:03:49.334Z" },
|
| 1080 |
+
{ url = "https://files.pythonhosted.org/packages/a0/f5/a61787da9b8847a601e6827fbc42ecb12be2c925ced3252c8ffcb56afcaf/jiter-0.10.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6c675736059020365cebc845a820214765162728b51ab1e03a1b7b3abb70f74c", size = 489057, upload-time = "2025-05-18T19:03:50.66Z" },
|
| 1081 |
+
{ url = "https://files.pythonhosted.org/packages/12/e4/6f906272810a7b21406c760a53aadbe52e99ee070fc5c0cb191e316de30b/jiter-0.10.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0c5867d40ab716e4684858e4887489685968a47e3ba222e44cde6e4a2154f959", size = 389372, upload-time = "2025-05-18T19:03:51.98Z" },
|
| 1082 |
+
{ url = "https://files.pythonhosted.org/packages/e2/ba/77013b0b8ba904bf3762f11e0129b8928bff7f978a81838dfcc958ad5728/jiter-0.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:395bb9a26111b60141757d874d27fdea01b17e8fac958b91c20128ba8f4acc8a", size = 352038, upload-time = "2025-05-18T19:03:53.703Z" },
|
| 1083 |
+
{ url = "https://files.pythonhosted.org/packages/67/27/c62568e3ccb03368dbcc44a1ef3a423cb86778a4389e995125d3d1aaa0a4/jiter-0.10.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6842184aed5cdb07e0c7e20e5bdcfafe33515ee1741a6835353bb45fe5d1bd95", size = 391538, upload-time = "2025-05-18T19:03:55.046Z" },
|
| 1084 |
+
{ url = "https://files.pythonhosted.org/packages/c0/72/0d6b7e31fc17a8fdce76164884edef0698ba556b8eb0af9546ae1a06b91d/jiter-0.10.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:62755d1bcea9876770d4df713d82606c8c1a3dca88ff39046b85a048566d56ea", size = 523557, upload-time = "2025-05-18T19:03:56.386Z" },
|
| 1085 |
+
{ url = "https://files.pythonhosted.org/packages/2f/09/bc1661fbbcbeb6244bd2904ff3a06f340aa77a2b94e5a7373fd165960ea3/jiter-0.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:533efbce2cacec78d5ba73a41756beff8431dfa1694b6346ce7af3a12c42202b", size = 514202, upload-time = "2025-05-18T19:03:57.675Z" },
|
| 1086 |
+
{ url = "https://files.pythonhosted.org/packages/1b/84/5a5d5400e9d4d54b8004c9673bbe4403928a00d28529ff35b19e9d176b19/jiter-0.10.0-cp312-cp312-win32.whl", hash = "sha256:8be921f0cadd245e981b964dfbcd6fd4bc4e254cdc069490416dd7a2632ecc01", size = 211781, upload-time = "2025-05-18T19:03:59.025Z" },
|
| 1087 |
+
{ url = "https://files.pythonhosted.org/packages/9b/52/7ec47455e26f2d6e5f2ea4951a0652c06e5b995c291f723973ae9e724a65/jiter-0.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:a7c7d785ae9dda68c2678532a5a1581347e9c15362ae9f6e68f3fdbfb64f2e49", size = 206176, upload-time = "2025-05-18T19:04:00.305Z" },
|
| 1088 |
+
{ url = "https://files.pythonhosted.org/packages/2e/b0/279597e7a270e8d22623fea6c5d4eeac328e7d95c236ed51a2b884c54f70/jiter-0.10.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:e0588107ec8e11b6f5ef0e0d656fb2803ac6cf94a96b2b9fc675c0e3ab5e8644", size = 311617, upload-time = "2025-05-18T19:04:02.078Z" },
|
| 1089 |
+
{ url = "https://files.pythonhosted.org/packages/91/e3/0916334936f356d605f54cc164af4060e3e7094364add445a3bc79335d46/jiter-0.10.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cafc4628b616dc32530c20ee53d71589816cf385dd9449633e910d596b1f5c8a", size = 318947, upload-time = "2025-05-18T19:04:03.347Z" },
|
| 1090 |
+
{ url = "https://files.pythonhosted.org/packages/6a/8e/fd94e8c02d0e94539b7d669a7ebbd2776e51f329bb2c84d4385e8063a2ad/jiter-0.10.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:520ef6d981172693786a49ff5b09eda72a42e539f14788124a07530f785c3ad6", size = 344618, upload-time = "2025-05-18T19:04:04.709Z" },
|
| 1091 |
+
{ url = "https://files.pythonhosted.org/packages/6f/b0/f9f0a2ec42c6e9c2e61c327824687f1e2415b767e1089c1d9135f43816bd/jiter-0.10.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:554dedfd05937f8fc45d17ebdf298fe7e0c77458232bcb73d9fbbf4c6455f5b3", size = 368829, upload-time = "2025-05-18T19:04:06.912Z" },
|
| 1092 |
+
{ url = "https://files.pythonhosted.org/packages/e8/57/5bbcd5331910595ad53b9fd0c610392ac68692176f05ae48d6ce5c852967/jiter-0.10.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5bc299da7789deacf95f64052d97f75c16d4fc8c4c214a22bf8d859a4288a1c2", size = 491034, upload-time = "2025-05-18T19:04:08.222Z" },
|
| 1093 |
+
{ url = "https://files.pythonhosted.org/packages/9b/be/c393df00e6e6e9e623a73551774449f2f23b6ec6a502a3297aeeece2c65a/jiter-0.10.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5161e201172de298a8a1baad95eb85db4fb90e902353b1f6a41d64ea64644e25", size = 388529, upload-time = "2025-05-18T19:04:09.566Z" },
|
| 1094 |
+
{ url = "https://files.pythonhosted.org/packages/42/3e/df2235c54d365434c7f150b986a6e35f41ebdc2f95acea3036d99613025d/jiter-0.10.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e2227db6ba93cb3e2bf67c87e594adde0609f146344e8207e8730364db27041", size = 350671, upload-time = "2025-05-18T19:04:10.98Z" },
|
| 1095 |
+
{ url = "https://files.pythonhosted.org/packages/c6/77/71b0b24cbcc28f55ab4dbfe029f9a5b73aeadaba677843fc6dc9ed2b1d0a/jiter-0.10.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:15acb267ea5e2c64515574b06a8bf393fbfee6a50eb1673614aa45f4613c0cca", size = 390864, upload-time = "2025-05-18T19:04:12.722Z" },
|
| 1096 |
+
{ url = "https://files.pythonhosted.org/packages/6a/d3/ef774b6969b9b6178e1d1e7a89a3bd37d241f3d3ec5f8deb37bbd203714a/jiter-0.10.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:901b92f2e2947dc6dfcb52fd624453862e16665ea909a08398dde19c0731b7f4", size = 522989, upload-time = "2025-05-18T19:04:14.261Z" },
|
| 1097 |
+
{ url = "https://files.pythonhosted.org/packages/0c/41/9becdb1d8dd5d854142f45a9d71949ed7e87a8e312b0bede2de849388cb9/jiter-0.10.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:d0cb9a125d5a3ec971a094a845eadde2db0de85b33c9f13eb94a0c63d463879e", size = 513495, upload-time = "2025-05-18T19:04:15.603Z" },
|
| 1098 |
+
{ url = "https://files.pythonhosted.org/packages/9c/36/3468e5a18238bdedae7c4d19461265b5e9b8e288d3f86cd89d00cbb48686/jiter-0.10.0-cp313-cp313-win32.whl", hash = "sha256:48a403277ad1ee208fb930bdf91745e4d2d6e47253eedc96e2559d1e6527006d", size = 211289, upload-time = "2025-05-18T19:04:17.541Z" },
|
| 1099 |
+
{ url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4", size = 205074, upload-time = "2025-05-18T19:04:19.21Z" },
|
| 1100 |
+
{ url = "https://files.pythonhosted.org/packages/54/46/caa2c1342655f57d8f0f2519774c6d67132205909c65e9aa8255e1d7b4f4/jiter-0.10.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:28ed2a4c05a1f32ef0e1d24c2611330219fed727dae01789f4a335617634b1ca", size = 318225, upload-time = "2025-05-18T19:04:20.583Z" },
|
| 1101 |
+
{ url = "https://files.pythonhosted.org/packages/43/84/c7d44c75767e18946219ba2d703a5a32ab37b0bc21886a97bc6062e4da42/jiter-0.10.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14a4c418b1ec86a195f1ca69da8b23e8926c752b685af665ce30777233dfe070", size = 350235, upload-time = "2025-05-18T19:04:22.363Z" },
|
| 1102 |
+
{ url = "https://files.pythonhosted.org/packages/01/16/f5a0135ccd968b480daad0e6ab34b0c7c5ba3bc447e5088152696140dcb3/jiter-0.10.0-cp313-cp313t-win_amd64.whl", hash = "sha256:d7bfed2fe1fe0e4dda6ef682cee888ba444b21e7a6553e03252e4feb6cf0adca", size = 207278, upload-time = "2025-05-18T19:04:23.627Z" },
|
| 1103 |
+
{ url = "https://files.pythonhosted.org/packages/1c/9b/1d646da42c3de6c2188fdaa15bce8ecb22b635904fc68be025e21249ba44/jiter-0.10.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:5e9251a5e83fab8d87799d3e1a46cb4b7f2919b895c6f4483629ed2446f66522", size = 310866, upload-time = "2025-05-18T19:04:24.891Z" },
|
| 1104 |
+
{ url = "https://files.pythonhosted.org/packages/ad/0e/26538b158e8a7c7987e94e7aeb2999e2e82b1f9d2e1f6e9874ddf71ebda0/jiter-0.10.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:023aa0204126fe5b87ccbcd75c8a0d0261b9abdbbf46d55e7ae9f8e22424eeb8", size = 318772, upload-time = "2025-05-18T19:04:26.161Z" },
|
| 1105 |
+
{ url = "https://files.pythonhosted.org/packages/7b/fb/d302893151caa1c2636d6574d213e4b34e31fd077af6050a9c5cbb42f6fb/jiter-0.10.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c189c4f1779c05f75fc17c0c1267594ed918996a231593a21a5ca5438445216", size = 344534, upload-time = "2025-05-18T19:04:27.495Z" },
|
| 1106 |
+
{ url = "https://files.pythonhosted.org/packages/01/d8/5780b64a149d74e347c5128d82176eb1e3241b1391ac07935693466d6219/jiter-0.10.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:15720084d90d1098ca0229352607cd68256c76991f6b374af96f36920eae13c4", size = 369087, upload-time = "2025-05-18T19:04:28.896Z" },
|
| 1107 |
+
{ url = "https://files.pythonhosted.org/packages/e8/5b/f235a1437445160e777544f3ade57544daf96ba7e96c1a5b24a6f7ac7004/jiter-0.10.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4f2fb68e5f1cfee30e2b2a09549a00683e0fde4c6a2ab88c94072fc33cb7426", size = 490694, upload-time = "2025-05-18T19:04:30.183Z" },
|
| 1108 |
+
{ url = "https://files.pythonhosted.org/packages/85/a9/9c3d4617caa2ff89cf61b41e83820c27ebb3f7b5fae8a72901e8cd6ff9be/jiter-0.10.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ce541693355fc6da424c08b7edf39a2895f58d6ea17d92cc2b168d20907dee12", size = 388992, upload-time = "2025-05-18T19:04:32.028Z" },
|
| 1109 |
+
{ url = "https://files.pythonhosted.org/packages/68/b1/344fd14049ba5c94526540af7eb661871f9c54d5f5601ff41a959b9a0bbd/jiter-0.10.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:31c50c40272e189d50006ad5c73883caabb73d4e9748a688b216e85a9a9ca3b9", size = 351723, upload-time = "2025-05-18T19:04:33.467Z" },
|
| 1110 |
+
{ url = "https://files.pythonhosted.org/packages/41/89/4c0e345041186f82a31aee7b9d4219a910df672b9fef26f129f0cda07a29/jiter-0.10.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fa3402a2ff9815960e0372a47b75c76979d74402448509ccd49a275fa983ef8a", size = 392215, upload-time = "2025-05-18T19:04:34.827Z" },
|
| 1111 |
+
{ url = "https://files.pythonhosted.org/packages/55/58/ee607863e18d3f895feb802154a2177d7e823a7103f000df182e0f718b38/jiter-0.10.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:1956f934dca32d7bb647ea21d06d93ca40868b505c228556d3373cbd255ce853", size = 522762, upload-time = "2025-05-18T19:04:36.19Z" },
|
| 1112 |
+
{ url = "https://files.pythonhosted.org/packages/15/d0/9123fb41825490d16929e73c212de9a42913d68324a8ce3c8476cae7ac9d/jiter-0.10.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:fcedb049bdfc555e261d6f65a6abe1d5ad68825b7202ccb9692636c70fcced86", size = 513427, upload-time = "2025-05-18T19:04:37.544Z" },
|
| 1113 |
+
{ url = "https://files.pythonhosted.org/packages/d8/b3/2bd02071c5a2430d0b70403a34411fc519c2f227da7b03da9ba6a956f931/jiter-0.10.0-cp314-cp314-win32.whl", hash = "sha256:ac509f7eccca54b2a29daeb516fb95b6f0bd0d0d8084efaf8ed5dfc7b9f0b357", size = 210127, upload-time = "2025-05-18T19:04:38.837Z" },
|
| 1114 |
+
{ url = "https://files.pythonhosted.org/packages/03/0c/5fe86614ea050c3ecd728ab4035534387cd41e7c1855ef6c031f1ca93e3f/jiter-0.10.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:5ed975b83a2b8639356151cef5c0d597c68376fc4922b45d0eb384ac058cfa00", size = 318527, upload-time = "2025-05-18T19:04:40.612Z" },
|
| 1115 |
+
{ url = "https://files.pythonhosted.org/packages/b3/4a/4175a563579e884192ba6e81725fc0448b042024419be8d83aa8a80a3f44/jiter-0.10.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aa96f2abba33dc77f79b4cf791840230375f9534e5fac927ccceb58c5e604a5", size = 354213, upload-time = "2025-05-18T19:04:41.894Z" },
|
| 1116 |
+
]
|
| 1117 |
+
|
| 1118 |
+
[[package]]
|
| 1119 |
+
name = "jmespath"
|
| 1120 |
+
version = "1.0.1"
|
| 1121 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1122 |
+
sdist = { url = "https://files.pythonhosted.org/packages/00/2a/e867e8531cf3e36b41201936b7fa7ba7b5702dbef42922193f05c8976cd6/jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe", size = 25843, upload-time = "2022-06-17T18:00:12.224Z" }
|
| 1123 |
+
wheels = [
|
| 1124 |
+
{ url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" },
|
| 1125 |
+
]
|
| 1126 |
+
|
| 1127 |
[[package]]
|
| 1128 |
name = "joblib"
|
| 1129 |
version = "1.5.1"
|
|
|
|
| 1207 |
{ url = "https://files.pythonhosted.org/packages/b5/ba/c63c5786dfee4c3417094c4b00966e61e4a63efecee22cb7b4c0387dda83/librosa-0.11.0-py3-none-any.whl", hash = "sha256:0b6415c4fd68bff4c29288abe67c6d80b587e0e1e2cfb0aad23e4559504a7fa1", size = 260749, upload-time = "2025-03-11T15:09:52.982Z" },
|
| 1208 |
]
|
| 1209 |
|
| 1210 |
+
[[package]]
|
| 1211 |
+
name = "llama-cloud"
|
| 1212 |
+
version = "0.1.23"
|
| 1213 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1214 |
+
dependencies = [
|
| 1215 |
+
{ name = "certifi" },
|
| 1216 |
+
{ name = "httpx" },
|
| 1217 |
+
{ name = "pydantic" },
|
| 1218 |
+
]
|
| 1219 |
+
sdist = { url = "https://files.pythonhosted.org/packages/5b/e4/d1a30167ed6690a408382be1cf7de220a506085f4371baaf067d65bad8fd/llama_cloud-0.1.23.tar.gz", hash = "sha256:3d84a24a860f046d39a106c06742ec0ea39a574ac42bbf91706fe025f44e233e", size = 101292, upload-time = "2025-05-28T03:11:50.373Z" }
|
| 1220 |
+
wheels = [
|
| 1221 |
+
{ url = "https://files.pythonhosted.org/packages/8a/15/3b56acef877dbc5d01d7e1a782c2cc50ef8a08d5773121c3bc20546de582/llama_cloud-0.1.23-py3-none-any.whl", hash = "sha256:ce95b0705d85c99b3b27b0af0d16a17d9a81b14c96bf13c1063a1bd13d8d0446", size = 267343, upload-time = "2025-05-28T03:11:48.942Z" },
|
| 1222 |
+
]
|
| 1223 |
+
|
| 1224 |
+
[[package]]
|
| 1225 |
+
name = "llama-cloud-services"
|
| 1226 |
+
version = "0.6.30"
|
| 1227 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1228 |
+
dependencies = [
|
| 1229 |
+
{ name = "click" },
|
| 1230 |
+
{ name = "llama-cloud" },
|
| 1231 |
+
{ name = "llama-index-core" },
|
| 1232 |
+
{ name = "platformdirs" },
|
| 1233 |
+
{ name = "pydantic" },
|
| 1234 |
+
{ name = "python-dotenv" },
|
| 1235 |
+
]
|
| 1236 |
+
sdist = { url = "https://files.pythonhosted.org/packages/b2/d4/77e975d88f49fe1dad32445337c122b39d26b6819554fd19a318413235c3/llama_cloud_services-0.6.30.tar.gz", hash = "sha256:2cb5004d13127aac52888ae9b3d70f899d598633520b2a2542bb62682d08d776", size = 33822, upload-time = "2025-06-05T21:40:12.773Z" }
|
| 1237 |
+
wheels = [
|
| 1238 |
+
{ url = "https://files.pythonhosted.org/packages/d0/79/815053ed66845e099f5369871d23fa925465dfd8e730a06f208e082d4239/llama_cloud_services-0.6.30-py3-none-any.whl", hash = "sha256:4d5817a9841fc3ba3409865c52d082090f4ef827931f0e5e4a89f5818c0d4e36", size = 38862, upload-time = "2025-06-05T21:40:11.398Z" },
|
| 1239 |
+
]
|
| 1240 |
+
|
| 1241 |
+
[[package]]
|
| 1242 |
+
name = "llama-index"
|
| 1243 |
+
version = "0.12.41"
|
| 1244 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1245 |
+
dependencies = [
|
| 1246 |
+
{ name = "llama-index-agent-openai" },
|
| 1247 |
+
{ name = "llama-index-cli" },
|
| 1248 |
+
{ name = "llama-index-core" },
|
| 1249 |
+
{ name = "llama-index-embeddings-openai" },
|
| 1250 |
+
{ name = "llama-index-indices-managed-llama-cloud" },
|
| 1251 |
+
{ name = "llama-index-llms-openai" },
|
| 1252 |
+
{ name = "llama-index-multi-modal-llms-openai" },
|
| 1253 |
+
{ name = "llama-index-program-openai" },
|
| 1254 |
+
{ name = "llama-index-question-gen-openai" },
|
| 1255 |
+
{ name = "llama-index-readers-file" },
|
| 1256 |
+
{ name = "llama-index-readers-llama-parse" },
|
| 1257 |
+
{ name = "nltk" },
|
| 1258 |
+
]
|
| 1259 |
+
sdist = { url = "https://files.pythonhosted.org/packages/25/6e/be0f62e6fbbe344b8fcafd1603aa1a54d9218f315aa819c2bcda2fffffb9/llama_index-0.12.41.tar.gz", hash = "sha256:0ab5e1b188c0e9c660d20ae525493870e20dde84af8398df67a2d55da3a6f09b", size = 8072, upload-time = "2025-06-07T22:05:22.322Z" }
|
| 1260 |
+
wheels = [
|
| 1261 |
+
{ url = "https://files.pythonhosted.org/packages/93/bf/a3e72da688b24c0a89919c8cc7cd62bbea2aeb6807322a8025743c7e809b/llama_index-0.12.41-py3-none-any.whl", hash = "sha256:09bfc886e6273c82478aacc21e9a68f57c878e1b09f0c1e72adb09ceded18a8e", size = 7085, upload-time = "2025-06-07T22:05:20.46Z" },
|
| 1262 |
+
]
|
| 1263 |
+
|
| 1264 |
+
[[package]]
|
| 1265 |
+
name = "llama-index-agent-openai"
|
| 1266 |
+
version = "0.4.9"
|
| 1267 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1268 |
+
dependencies = [
|
| 1269 |
+
{ name = "llama-index-core" },
|
| 1270 |
+
{ name = "llama-index-llms-openai" },
|
| 1271 |
+
{ name = "openai" },
|
| 1272 |
+
]
|
| 1273 |
+
sdist = { url = "https://files.pythonhosted.org/packages/28/e5/2bf8d39a62b10b5a4901e3ff8664abe5a8b91c95720775c0a6b559f53c5e/llama_index_agent_openai-0.4.9.tar.gz", hash = "sha256:153cc0f49dcaa0cc44795e2d3ea20efb7dd1251368c0d7704a6e26aac6611c9d", size = 12226, upload-time = "2025-05-30T20:11:00.444Z" }
|
| 1274 |
+
wheels = [
|
| 1275 |
+
{ url = "https://files.pythonhosted.org/packages/ec/3e/24fcc3e486c730e4f0bbd7bd94f22adce2e6f570689b8fa1f0eddf7ad71b/llama_index_agent_openai-0.4.9-py3-none-any.whl", hash = "sha256:d696b014ef5652cdae3fe934cc2146fb05ffa978a242d432a2ae895524935c20", size = 14205, upload-time = "2025-05-30T20:10:59.198Z" },
|
| 1276 |
+
]
|
| 1277 |
+
|
| 1278 |
+
[[package]]
|
| 1279 |
+
name = "llama-index-cli"
|
| 1280 |
+
version = "0.4.3"
|
| 1281 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1282 |
+
dependencies = [
|
| 1283 |
+
{ name = "llama-index-core" },
|
| 1284 |
+
{ name = "llama-index-embeddings-openai" },
|
| 1285 |
+
{ name = "llama-index-llms-openai" },
|
| 1286 |
+
]
|
| 1287 |
+
sdist = { url = "https://files.pythonhosted.org/packages/f8/a3/1acdb3aa3f4a90a1d5275dcaa4acea295aa3d9102d7529c56734c0cde46c/llama_index_cli-0.4.3.tar.gz", hash = "sha256:dae8183a10551bbd89686b94ed294a6cf44633c3dd6285c4f991c85031b7a55f", size = 25274, upload-time = "2025-06-04T21:06:16.691Z" }
|
| 1288 |
+
wheels = [
|
| 1289 |
+
{ url = "https://files.pythonhosted.org/packages/bc/e5/0e7f9515c88cf4e791bf243f83246e2634c01ec5cdbd7245307b28b48487/llama_index_cli-0.4.3-py3-none-any.whl", hash = "sha256:f0af55ce4b90e5a2466e394b88f4ac6085ea3e6286019bc3f49de6673ce2238d", size = 28564, upload-time = "2025-06-04T21:06:09.304Z" },
|
| 1290 |
+
]
|
| 1291 |
+
|
| 1292 |
+
[[package]]
|
| 1293 |
+
name = "llama-index-core"
|
| 1294 |
+
version = "0.12.41"
|
| 1295 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1296 |
+
dependencies = [
|
| 1297 |
+
{ name = "aiohttp" },
|
| 1298 |
+
{ name = "aiosqlite" },
|
| 1299 |
+
{ name = "banks" },
|
| 1300 |
+
{ name = "dataclasses-json" },
|
| 1301 |
+
{ name = "deprecated" },
|
| 1302 |
+
{ name = "dirtyjson" },
|
| 1303 |
+
{ name = "filetype" },
|
| 1304 |
+
{ name = "fsspec" },
|
| 1305 |
+
{ name = "httpx" },
|
| 1306 |
+
{ name = "nest-asyncio" },
|
| 1307 |
+
{ name = "networkx" },
|
| 1308 |
+
{ name = "nltk" },
|
| 1309 |
+
{ name = "numpy" },
|
| 1310 |
+
{ name = "pillow" },
|
| 1311 |
+
{ name = "pydantic" },
|
| 1312 |
+
{ name = "pyyaml" },
|
| 1313 |
+
{ name = "requests" },
|
| 1314 |
+
{ name = "sqlalchemy", extra = ["asyncio"] },
|
| 1315 |
+
{ name = "tenacity" },
|
| 1316 |
+
{ name = "tiktoken" },
|
| 1317 |
+
{ name = "tqdm" },
|
| 1318 |
+
{ name = "typing-extensions" },
|
| 1319 |
+
{ name = "typing-inspect" },
|
| 1320 |
+
{ name = "wrapt" },
|
| 1321 |
+
]
|
| 1322 |
+
sdist = { url = "https://files.pythonhosted.org/packages/5b/2d/9b18c26212558464c65037823385e5ee9361c99bcc22fd81480cc2760be9/llama_index_core-0.12.41.tar.gz", hash = "sha256:34f77c51b12b11ee1d743ff183c1b61afe2975f9970357723a744d4e080f5b3d", size = 7292626, upload-time = "2025-06-07T20:31:51.582Z" }
|
| 1323 |
+
wheels = [
|
| 1324 |
+
{ url = "https://files.pythonhosted.org/packages/fa/07/d1427e7d6b13664edd878696233bd98a02f67d708c133b66ffb563b5add6/llama_index_core-0.12.41-py3-none-any.whl", hash = "sha256:61fc1e912303250ee32778d5db566e242f7bd9ee043940860a436e3c93f17ef5", size = 7665699, upload-time = "2025-06-07T20:31:47.4Z" },
|
| 1325 |
+
]
|
| 1326 |
+
|
| 1327 |
+
[[package]]
|
| 1328 |
+
name = "llama-index-embeddings-openai"
|
| 1329 |
+
version = "0.3.1"
|
| 1330 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1331 |
+
dependencies = [
|
| 1332 |
+
{ name = "llama-index-core" },
|
| 1333 |
+
{ name = "openai" },
|
| 1334 |
+
]
|
| 1335 |
+
sdist = { url = "https://files.pythonhosted.org/packages/a1/02/a2604ef3a167131fdd701888f45f16c8efa6d523d02efe8c4e640238f4ea/llama_index_embeddings_openai-0.3.1.tar.gz", hash = "sha256:1368aad3ce24cbaed23d5ad251343cef1eb7b4a06d6563d6606d59cb347fef20", size = 5492, upload-time = "2024-11-27T16:04:17.017Z" }
|
| 1336 |
+
wheels = [
|
| 1337 |
+
{ url = "https://files.pythonhosted.org/packages/bb/45/ca55b91c4ac1b6251d4099fa44121a6c012129822906cadcc27b8cfb33a4/llama_index_embeddings_openai-0.3.1-py3-none-any.whl", hash = "sha256:f15a3d13da9b6b21b8bd51d337197879a453d1605e625a1c6d45e741756c0290", size = 6177, upload-time = "2024-11-27T16:04:15.981Z" },
|
| 1338 |
+
]
|
| 1339 |
+
|
| 1340 |
+
[[package]]
|
| 1341 |
+
name = "llama-index-indices-managed-llama-cloud"
|
| 1342 |
+
version = "0.7.4"
|
| 1343 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1344 |
+
dependencies = [
|
| 1345 |
+
{ name = "llama-cloud" },
|
| 1346 |
+
{ name = "llama-index-core" },
|
| 1347 |
+
]
|
| 1348 |
+
sdist = { url = "https://files.pythonhosted.org/packages/bb/ad/9099774f5138295b7f576fb1164b83f3493e9d6541e19986c6a5b513d110/llama_index_indices_managed_llama_cloud-0.7.4.tar.gz", hash = "sha256:f014ba41b56d4aefe346647770734bc914a1fc8f77bf508d8eaf0e2089189ec8", size = 13866, upload-time = "2025-06-05T01:35:05.482Z" }
|
| 1349 |
+
wheels = [
|
| 1350 |
+
{ url = "https://files.pythonhosted.org/packages/f6/1a/b2187464d9dbd4466eca0f710152903db01fc88ce6ecc46420d51bd52ac0/llama_index_indices_managed_llama_cloud-0.7.4-py3-none-any.whl", hash = "sha256:1d0ff874250c76615d0563409ebd887c5aac824382447054869a6be6335656bd", size = 15515, upload-time = "2025-06-05T01:35:04.091Z" },
|
| 1351 |
+
]
|
| 1352 |
+
|
| 1353 |
+
[[package]]
|
| 1354 |
+
name = "llama-index-llms-anthropic"
|
| 1355 |
+
version = "0.7.2"
|
| 1356 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1357 |
+
dependencies = [
|
| 1358 |
+
{ name = "anthropic", extra = ["bedrock", "vertex"] },
|
| 1359 |
+
{ name = "llama-index-core" },
|
| 1360 |
+
]
|
| 1361 |
+
sdist = { url = "https://files.pythonhosted.org/packages/d1/e2/a5b074f09e95df247755e4159cc2c0ff9f4185d5e9d621460399c3637be0/llama_index_llms_anthropic-0.7.2.tar.gz", hash = "sha256:d31beb22294440a8cd184f6f596ae200c3629458a09ef5fe0ad4d5e9fbbce1f1", size = 12123, upload-time = "2025-06-02T16:30:22.311Z" }
|
| 1362 |
+
wheels = [
|
| 1363 |
+
{ url = "https://files.pythonhosted.org/packages/0e/57/8d8aeb4637aaff9cc8a418ff387158a1c5a423a0a22a919ab6ac02914fbc/llama_index_llms_anthropic-0.7.2-py3-none-any.whl", hash = "sha256:201b3db32200be147a1b19c84cf8e0561af4270beef08c59b25c5672e175960b", size = 12357, upload-time = "2025-06-02T16:30:21.276Z" },
|
| 1364 |
+
]
|
| 1365 |
+
|
| 1366 |
+
[[package]]
|
| 1367 |
+
name = "llama-index-llms-openai"
|
| 1368 |
+
version = "0.4.4"
|
| 1369 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1370 |
+
dependencies = [
|
| 1371 |
+
{ name = "llama-index-core" },
|
| 1372 |
+
{ name = "openai" },
|
| 1373 |
+
]
|
| 1374 |
+
sdist = { url = "https://files.pythonhosted.org/packages/26/31/b478b1530dad7518a5c76a715a1e67d3e3d17234ce2c3719bc04c2c2cd02/llama_index_llms_openai-0.4.4.tar.gz", hash = "sha256:5d3b96e4c9886effb44489a05eb824d7277e98e56e24bfbb8656cd42c4f0aa0a", size = 24169, upload-time = "2025-06-07T22:05:27.547Z" }
|
| 1375 |
+
wheels = [
|
| 1376 |
+
{ url = "https://files.pythonhosted.org/packages/a9/dc/f1380198b0f05c7c9a942c31e4ff1c693bc622bcb5a622dbbf59d412b1fd/llama_index_llms_openai-0.4.4-py3-none-any.whl", hash = "sha256:b3e4505b9c7a7ef1cb02353f9e79465169f00b45f20d882773d8f206f92e8e04", size = 25286, upload-time = "2025-06-07T22:05:26.522Z" },
|
| 1377 |
+
]
|
| 1378 |
+
|
| 1379 |
+
[[package]]
|
| 1380 |
+
name = "llama-index-multi-modal-llms-openai"
|
| 1381 |
+
version = "0.5.1"
|
| 1382 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1383 |
+
dependencies = [
|
| 1384 |
+
{ name = "llama-index-core" },
|
| 1385 |
+
{ name = "llama-index-llms-openai" },
|
| 1386 |
+
]
|
| 1387 |
+
sdist = { url = "https://files.pythonhosted.org/packages/7b/77/0ece3c7887e9c7242fc7cc2a184374bbeb08a35783d71a8466e1dd18ccfc/llama_index_multi_modal_llms_openai-0.5.1.tar.gz", hash = "sha256:df3aff00c36023c5f8c49f972a325f71823ed0f4dd9cd479955d76afc146575f", size = 3708, upload-time = "2025-05-30T23:08:09.915Z" }
|
| 1388 |
+
wheels = [
|
| 1389 |
+
{ url = "https://files.pythonhosted.org/packages/17/a5/6181a385af1caef88e1d0d3919c399ba7e031190fc0be4fd5242875c5b0e/llama_index_multi_modal_llms_openai-0.5.1-py3-none-any.whl", hash = "sha256:69bb9c310c323ce51038f0d40719f546d0d4e0853835a4f5cfa21f07dbb0b91e", size = 3362, upload-time = "2025-05-30T23:08:08.977Z" },
|
| 1390 |
+
]
|
| 1391 |
+
|
| 1392 |
+
[[package]]
|
| 1393 |
+
name = "llama-index-program-openai"
|
| 1394 |
+
version = "0.3.2"
|
| 1395 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1396 |
+
dependencies = [
|
| 1397 |
+
{ name = "llama-index-agent-openai" },
|
| 1398 |
+
{ name = "llama-index-core" },
|
| 1399 |
+
{ name = "llama-index-llms-openai" },
|
| 1400 |
+
]
|
| 1401 |
+
sdist = { url = "https://files.pythonhosted.org/packages/83/81/9caa34e80adce1adb715ae083a54ad45c8fc0d9aef0f2d80d61c1b805ab6/llama_index_program_openai-0.3.2.tar.gz", hash = "sha256:04c959a2e616489894bd2eeebb99500d6f1c17d588c3da0ddc75ebd3eb7451ee", size = 6301, upload-time = "2025-05-30T23:00:27.872Z" }
|
| 1402 |
+
wheels = [
|
| 1403 |
+
{ url = "https://files.pythonhosted.org/packages/05/80/d6ac8afafdd38115d61214891c36876e64f429809abff873660fe30862fe/llama_index_program_openai-0.3.2-py3-none-any.whl", hash = "sha256:451829ae53e074e7b47dcc60a9dd155fcf9d1dcbc1754074bdadd6aab4ceb9aa", size = 6129, upload-time = "2025-05-30T23:00:26.64Z" },
|
| 1404 |
+
]
|
| 1405 |
+
|
| 1406 |
+
[[package]]
|
| 1407 |
+
name = "llama-index-question-gen-openai"
|
| 1408 |
+
version = "0.3.1"
|
| 1409 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1410 |
+
dependencies = [
|
| 1411 |
+
{ name = "llama-index-core" },
|
| 1412 |
+
{ name = "llama-index-llms-openai" },
|
| 1413 |
+
{ name = "llama-index-program-openai" },
|
| 1414 |
+
]
|
| 1415 |
+
sdist = { url = "https://files.pythonhosted.org/packages/52/6e/19c5051c81ef5fca597d13c6d41b863535521565b1414ab5ab0e5e8c1297/llama_index_question_gen_openai-0.3.1.tar.gz", hash = "sha256:5e9311b433cc2581ff8a531fa19fb3aa21815baff75aaacdef11760ac9522aa9", size = 4107, upload-time = "2025-05-30T23:00:31.016Z" }
|
| 1416 |
+
wheels = [
|
| 1417 |
+
{ url = "https://files.pythonhosted.org/packages/15/2a/652593d0bd24f901776db0d1778a42363ea2656530da18215f413ce4f981/llama_index_question_gen_openai-0.3.1-py3-none-any.whl", hash = "sha256:1ce266f6c8373fc8d884ff83a44dfbacecde2301785db7144872db51b8b99429", size = 3733, upload-time = "2025-05-30T23:00:29.965Z" },
|
| 1418 |
+
]
|
| 1419 |
+
|
| 1420 |
+
[[package]]
|
| 1421 |
+
name = "llama-index-readers-file"
|
| 1422 |
+
version = "0.4.9"
|
| 1423 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1424 |
+
dependencies = [
|
| 1425 |
+
{ name = "beautifulsoup4" },
|
| 1426 |
+
{ name = "llama-index-core" },
|
| 1427 |
+
{ name = "pandas" },
|
| 1428 |
+
{ name = "pypdf" },
|
| 1429 |
+
{ name = "striprtf" },
|
| 1430 |
+
]
|
| 1431 |
+
sdist = { url = "https://files.pythonhosted.org/packages/6a/aa/517a79b9fa57ff42dc3d0ae801676b794c81bbceacc2350c948ebe9cfa7e/llama_index_readers_file-0.4.9.tar.gz", hash = "sha256:b705fd42a2875af03d343c66b28138471800cd13a67efcc48ae2983b39d816c7", size = 22710, upload-time = "2025-06-05T04:26:00.705Z" }
|
| 1432 |
+
wheels = [
|
| 1433 |
+
{ url = "https://files.pythonhosted.org/packages/65/65/ebc692d80f55501771eec0854cea90c9f7ecdbd688a74e89357ef8afa285/llama_index_readers_file-0.4.9-py3-none-any.whl", hash = "sha256:71f1d0d2ea22012bf233ed4afb9b9b6b2f098d26286e38ed82e3c4af685e07bd", size = 40976, upload-time = "2025-06-05T04:25:59.397Z" },
|
| 1434 |
+
]
|
| 1435 |
+
|
| 1436 |
+
[[package]]
|
| 1437 |
+
name = "llama-index-readers-llama-parse"
|
| 1438 |
+
version = "0.4.0"
|
| 1439 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1440 |
+
dependencies = [
|
| 1441 |
+
{ name = "llama-index-core" },
|
| 1442 |
+
{ name = "llama-parse" },
|
| 1443 |
+
]
|
| 1444 |
+
sdist = { url = "https://files.pythonhosted.org/packages/35/30/4611821286f82ba7b5842295607baa876262db86f88b87d83595eed172bf/llama_index_readers_llama_parse-0.4.0.tar.gz", hash = "sha256:e99ec56f4f8546d7fda1a7c1ae26162fb9acb7ebcac343b5abdb4234b4644e0f", size = 2472, upload-time = "2024-11-18T00:00:08.893Z" }
|
| 1445 |
+
wheels = [
|
| 1446 |
+
{ url = "https://files.pythonhosted.org/packages/68/4f/e30d4257fe9e4224f5612b77fe99aaceddae411b2e74ca30534491de3e6f/llama_index_readers_llama_parse-0.4.0-py3-none-any.whl", hash = "sha256:574e48386f28d2c86c3f961ca4a4906910312f3400dd0c53014465bfbc6b32bf", size = 2472, upload-time = "2024-11-18T00:00:07.293Z" },
|
| 1447 |
+
]
|
| 1448 |
+
|
| 1449 |
+
[[package]]
|
| 1450 |
+
name = "llama-parse"
|
| 1451 |
+
version = "0.6.30"
|
| 1452 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1453 |
+
dependencies = [
|
| 1454 |
+
{ name = "llama-cloud-services" },
|
| 1455 |
+
]
|
| 1456 |
+
sdist = { url = "https://files.pythonhosted.org/packages/28/5f/c1ebc70eae71b2d586b7b3d4636775949a57c48b60c1c513a4a8ab909a46/llama_parse-0.6.30.tar.gz", hash = "sha256:2506802bc7f3974c75d91444387b0ee22c3a91828cd19da0dd9ea327c9f47a79", size = 3536, upload-time = "2025-06-05T21:41:44.685Z" }
|
| 1457 |
+
wheels = [
|
| 1458 |
+
{ url = "https://files.pythonhosted.org/packages/f3/d9/a375fe968789c874b2b47afd505a0ac3cf225077fb417d00ac43baf6e07d/llama_parse-0.6.30-py3-none-any.whl", hash = "sha256:f5969510cf01c2fda9832acb32086dac781729bee5768c21ad9b444420173948", size = 4944, upload-time = "2025-06-05T21:41:43.753Z" },
|
| 1459 |
+
]
|
| 1460 |
+
|
| 1461 |
[[package]]
|
| 1462 |
name = "llvmlite"
|
| 1463 |
version = "0.44.0"
|
|
|
|
| 1559 |
{ url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" },
|
| 1560 |
]
|
| 1561 |
|
| 1562 |
+
[[package]]
|
| 1563 |
+
name = "marshmallow"
|
| 1564 |
+
version = "3.26.1"
|
| 1565 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1566 |
+
dependencies = [
|
| 1567 |
+
{ name = "packaging" },
|
| 1568 |
+
]
|
| 1569 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ab/5e/5e53d26b42ab75491cda89b871dab9e97c840bf12c63ec58a1919710cd06/marshmallow-3.26.1.tar.gz", hash = "sha256:e6d8affb6cb61d39d26402096dc0aee12d5a26d490a121f118d2e81dc0719dc6", size = 221825, upload-time = "2025-02-03T15:32:25.093Z" }
|
| 1570 |
+
wheels = [
|
| 1571 |
+
{ url = "https://files.pythonhosted.org/packages/34/75/51952c7b2d3873b44a0028b1bd26a25078c18f92f256608e8d1dc61b39fd/marshmallow-3.26.1-py3-none-any.whl", hash = "sha256:3350409f20a70a7e4e11a27661187b77cdcaeb20abca41c1454fe33636bea09c", size = 50878, upload-time = "2025-02-03T15:32:22.295Z" },
|
| 1572 |
+
]
|
| 1573 |
+
|
| 1574 |
[[package]]
|
| 1575 |
name = "mcp"
|
| 1576 |
version = "1.9.0"
|
|
|
|
| 1758 |
{ url = "https://files.pythonhosted.org/packages/84/5d/e17845bb0fa76334477d5de38654d27946d5b5d3695443987a094a71b440/multidict-6.4.4-py3-none-any.whl", hash = "sha256:bd4557071b561a8b3b6075c3ce93cf9bfb6182cb241805c3d66ced3b75eff4ac", size = 10481, upload-time = "2025-05-19T14:16:36.024Z" },
|
| 1759 |
]
|
| 1760 |
|
| 1761 |
+
[[package]]
|
| 1762 |
+
name = "mypy-extensions"
|
| 1763 |
+
version = "1.1.0"
|
| 1764 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1765 |
+
sdist = { url = "https://files.pythonhosted.org/packages/a2/6e/371856a3fb9d31ca8dac321cda606860fa4548858c0cc45d9d1d4ca2628b/mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558", size = 6343, upload-time = "2025-04-22T14:54:24.164Z" }
|
| 1766 |
+
wheels = [
|
| 1767 |
+
{ url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505", size = 4963, upload-time = "2025-04-22T14:54:22.983Z" },
|
| 1768 |
+
]
|
| 1769 |
+
|
| 1770 |
[[package]]
|
| 1771 |
name = "namex"
|
| 1772 |
version = "0.1.0"
|
|
|
|
| 1776 |
{ url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl", hash = "sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c", size = 5905, upload-time = "2025-05-26T23:17:37.695Z" },
|
| 1777 |
]
|
| 1778 |
|
| 1779 |
+
[[package]]
|
| 1780 |
+
name = "nest-asyncio"
|
| 1781 |
+
version = "1.6.0"
|
| 1782 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1783 |
+
sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418, upload-time = "2024-01-21T14:25:19.227Z" }
|
| 1784 |
+
wheels = [
|
| 1785 |
+
{ url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" },
|
| 1786 |
+
]
|
| 1787 |
+
|
| 1788 |
[[package]]
|
| 1789 |
name = "networkx"
|
| 1790 |
version = "3.5"
|
|
|
|
| 1794 |
{ url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl", hash = "sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec", size = 2034406, upload-time = "2025-05-29T11:35:04.961Z" },
|
| 1795 |
]
|
| 1796 |
|
| 1797 |
+
[[package]]
|
| 1798 |
+
name = "nltk"
|
| 1799 |
+
version = "3.9.1"
|
| 1800 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1801 |
+
dependencies = [
|
| 1802 |
+
{ name = "click" },
|
| 1803 |
+
{ name = "joblib" },
|
| 1804 |
+
{ name = "regex" },
|
| 1805 |
+
{ name = "tqdm" },
|
| 1806 |
+
]
|
| 1807 |
+
sdist = { url = "https://files.pythonhosted.org/packages/3c/87/db8be88ad32c2d042420b6fd9ffd4a149f9a0d7f0e86b3f543be2eeeedd2/nltk-3.9.1.tar.gz", hash = "sha256:87d127bd3de4bd89a4f81265e5fa59cb1b199b27440175370f7417d2bc7ae868", size = 2904691, upload-time = "2024-08-18T19:48:37.769Z" }
|
| 1808 |
+
wheels = [
|
| 1809 |
+
{ url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl", hash = "sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1", size = 1505442, upload-time = "2024-08-18T19:48:21.909Z" },
|
| 1810 |
+
]
|
| 1811 |
+
|
| 1812 |
[[package]]
|
| 1813 |
name = "numba"
|
| 1814 |
version = "0.61.2"
|
|
|
|
| 2002 |
{ url = "https://files.pythonhosted.org/packages/9e/4e/0d0c945463719429b7bd21dece907ad0bde437a2ff12b9b12fee94722ab0/nvidia_nvtx_cu12-12.6.77-py3-none-manylinux2014_x86_64.whl", hash = "sha256:6574241a3ec5fdc9334353ab8c479fe75841dbe8f4532a8fc97ce63503330ba1", size = 89265, upload-time = "2024-10-01T17:00:38.172Z" },
|
| 2003 |
]
|
| 2004 |
|
| 2005 |
+
[[package]]
|
| 2006 |
+
name = "openai"
|
| 2007 |
+
version = "1.85.0"
|
| 2008 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2009 |
+
dependencies = [
|
| 2010 |
+
{ name = "anyio" },
|
| 2011 |
+
{ name = "distro" },
|
| 2012 |
+
{ name = "httpx" },
|
| 2013 |
+
{ name = "jiter" },
|
| 2014 |
+
{ name = "pydantic" },
|
| 2015 |
+
{ name = "sniffio" },
|
| 2016 |
+
{ name = "tqdm" },
|
| 2017 |
+
{ name = "typing-extensions" },
|
| 2018 |
+
]
|
| 2019 |
+
sdist = { url = "https://files.pythonhosted.org/packages/22/3c/1143dc0a865d06482454fddb35d739c9260b18d721f01287f79cc53a315f/openai-1.85.0.tar.gz", hash = "sha256:6ba76e4ebc5725f71f2f6126c7cb5169ca8de60dd5aa61f350f9448ad162c913", size = 468207, upload-time = "2025-06-09T16:51:17.361Z" }
|
| 2020 |
+
wheels = [
|
| 2021 |
+
{ url = "https://files.pythonhosted.org/packages/a0/73/b4427c7873f4f778ec7a6d2b1724fd3aadc85719a12e324615b9c2bc614f/openai-1.85.0-py3-none-any.whl", hash = "sha256:7dc3e839cb8bb8747979a90c63ad4cb25a8e0cbec17b53eec009532c9965cecf", size = 730229, upload-time = "2025-06-09T16:51:15.678Z" },
|
| 2022 |
+
]
|
| 2023 |
+
|
| 2024 |
[[package]]
|
| 2025 |
name = "opencv-python"
|
| 2026 |
version = "4.11.0.86"
|
|
|
|
| 2321 |
{ url = "https://files.pythonhosted.org/packages/7e/cc/7e77861000a0691aeea8f4566e5d3aa716f2b1dece4a24439437e41d3d25/protobuf-5.29.5-py3-none-any.whl", hash = "sha256:6cf42630262c59b2d8de33954443d94b746c952b01434fc58a417fdbd2e84bd5", size = 172823, upload-time = "2025-05-28T23:51:58.157Z" },
|
| 2322 |
]
|
| 2323 |
|
| 2324 |
+
[[package]]
|
| 2325 |
+
name = "pyasn1"
|
| 2326 |
+
version = "0.6.1"
|
| 2327 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2328 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ba/e9/01f1a64245b89f039897cb0130016d79f77d52669aae6ee7b159a6c4c018/pyasn1-0.6.1.tar.gz", hash = "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034", size = 145322, upload-time = "2024-09-10T22:41:42.55Z" }
|
| 2329 |
+
wheels = [
|
| 2330 |
+
{ url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl", hash = "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629", size = 83135, upload-time = "2024-09-11T16:00:36.122Z" },
|
| 2331 |
+
]
|
| 2332 |
+
|
| 2333 |
+
[[package]]
|
| 2334 |
+
name = "pyasn1-modules"
|
| 2335 |
+
version = "0.4.2"
|
| 2336 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2337 |
+
dependencies = [
|
| 2338 |
+
{ name = "pyasn1" },
|
| 2339 |
+
]
|
| 2340 |
+
sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892, upload-time = "2025-03-28T02:41:22.17Z" }
|
| 2341 |
+
wheels = [
|
| 2342 |
+
{ url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259, upload-time = "2025-03-28T02:41:19.028Z" },
|
| 2343 |
+
]
|
| 2344 |
+
|
| 2345 |
[[package]]
|
| 2346 |
name = "pycparser"
|
| 2347 |
version = "2.22"
|
|
|
|
| 2440 |
{ url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c", size = 1225293, upload-time = "2025-01-06T17:26:25.553Z" },
|
| 2441 |
]
|
| 2442 |
|
| 2443 |
+
[[package]]
|
| 2444 |
+
name = "pypdf"
|
| 2445 |
+
version = "5.6.0"
|
| 2446 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2447 |
+
sdist = { url = "https://files.pythonhosted.org/packages/40/46/67de1d7a65412aa1c896e6b280829b70b57d203fadae6859b690006b8e0a/pypdf-5.6.0.tar.gz", hash = "sha256:a4b6538b77fc796622000db7127e4e58039ec5e6afd292f8e9bf42e2e985a749", size = 5023749, upload-time = "2025-06-01T12:19:40.101Z" }
|
| 2448 |
+
wheels = [
|
| 2449 |
+
{ url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl", hash = "sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7", size = 304208, upload-time = "2025-06-01T12:19:38.003Z" },
|
| 2450 |
+
]
|
| 2451 |
+
|
| 2452 |
[[package]]
|
| 2453 |
name = "pysocks"
|
| 2454 |
version = "1.7.1"
|
|
|
|
| 2523 |
{ url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446, upload-time = "2024-08-06T20:33:04.33Z" },
|
| 2524 |
]
|
| 2525 |
|
| 2526 |
+
[[package]]
|
| 2527 |
+
name = "regex"
|
| 2528 |
+
version = "2024.11.6"
|
| 2529 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2530 |
+
sdist = { url = "https://files.pythonhosted.org/packages/8e/5f/bd69653fbfb76cf8604468d3b4ec4c403197144c7bfe0e6a5fc9e02a07cb/regex-2024.11.6.tar.gz", hash = "sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519", size = 399494, upload-time = "2024-11-06T20:12:31.635Z" }
|
| 2531 |
+
wheels = [
|
| 2532 |
+
{ url = "https://files.pythonhosted.org/packages/ba/30/9a87ce8336b172cc232a0db89a3af97929d06c11ceaa19d97d84fa90a8f8/regex-2024.11.6-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:52fb28f528778f184f870b7cf8f225f5eef0a8f6e3778529bdd40c7b3920796a", size = 483781, upload-time = "2024-11-06T20:10:07.07Z" },
|
| 2533 |
+
{ url = "https://files.pythonhosted.org/packages/01/e8/00008ad4ff4be8b1844786ba6636035f7ef926db5686e4c0f98093612add/regex-2024.11.6-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fdd6028445d2460f33136c55eeb1f601ab06d74cb3347132e1c24250187500d9", size = 288455, upload-time = "2024-11-06T20:10:09.117Z" },
|
| 2534 |
+
{ url = "https://files.pythonhosted.org/packages/60/85/cebcc0aff603ea0a201667b203f13ba75d9fc8668fab917ac5b2de3967bc/regex-2024.11.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:805e6b60c54bf766b251e94526ebad60b7de0c70f70a4e6210ee2891acb70bf2", size = 284759, upload-time = "2024-11-06T20:10:11.155Z" },
|
| 2535 |
+
{ url = "https://files.pythonhosted.org/packages/94/2b/701a4b0585cb05472a4da28ee28fdfe155f3638f5e1ec92306d924e5faf0/regex-2024.11.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b85c2530be953a890eaffde05485238f07029600e8f098cdf1848d414a8b45e4", size = 794976, upload-time = "2024-11-06T20:10:13.24Z" },
|
| 2536 |
+
{ url = "https://files.pythonhosted.org/packages/4b/bf/fa87e563bf5fee75db8915f7352e1887b1249126a1be4813837f5dbec965/regex-2024.11.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bb26437975da7dc36b7efad18aa9dd4ea569d2357ae6b783bf1118dabd9ea577", size = 833077, upload-time = "2024-11-06T20:10:15.37Z" },
|
| 2537 |
+
{ url = "https://files.pythonhosted.org/packages/a1/56/7295e6bad94b047f4d0834e4779491b81216583c00c288252ef625c01d23/regex-2024.11.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:abfa5080c374a76a251ba60683242bc17eeb2c9818d0d30117b4486be10c59d3", size = 823160, upload-time = "2024-11-06T20:10:19.027Z" },
|
| 2538 |
+
{ url = "https://files.pythonhosted.org/packages/fb/13/e3b075031a738c9598c51cfbc4c7879e26729c53aa9cca59211c44235314/regex-2024.11.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b7fa6606c2881c1db9479b0eaa11ed5dfa11c8d60a474ff0e095099f39d98e", size = 796896, upload-time = "2024-11-06T20:10:21.85Z" },
|
| 2539 |
+
{ url = "https://files.pythonhosted.org/packages/24/56/0b3f1b66d592be6efec23a795b37732682520b47c53da5a32c33ed7d84e3/regex-2024.11.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0c32f75920cf99fe6b6c539c399a4a128452eaf1af27f39bce8909c9a3fd8cbe", size = 783997, upload-time = "2024-11-06T20:10:24.329Z" },
|
| 2540 |
+
{ url = "https://files.pythonhosted.org/packages/f9/a1/eb378dada8b91c0e4c5f08ffb56f25fcae47bf52ad18f9b2f33b83e6d498/regex-2024.11.6-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:982e6d21414e78e1f51cf595d7f321dcd14de1f2881c5dc6a6e23bbbbd68435e", size = 781725, upload-time = "2024-11-06T20:10:28.067Z" },
|
| 2541 |
+
{ url = "https://files.pythonhosted.org/packages/83/f2/033e7dec0cfd6dda93390089864732a3409246ffe8b042e9554afa9bff4e/regex-2024.11.6-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a7c2155f790e2fb448faed6dd241386719802296ec588a8b9051c1f5c481bc29", size = 789481, upload-time = "2024-11-06T20:10:31.612Z" },
|
| 2542 |
+
{ url = "https://files.pythonhosted.org/packages/83/23/15d4552ea28990a74e7696780c438aadd73a20318c47e527b47a4a5a596d/regex-2024.11.6-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:149f5008d286636e48cd0b1dd65018548944e495b0265b45e1bffecce1ef7f39", size = 852896, upload-time = "2024-11-06T20:10:34.054Z" },
|
| 2543 |
+
{ url = "https://files.pythonhosted.org/packages/e3/39/ed4416bc90deedbfdada2568b2cb0bc1fdb98efe11f5378d9892b2a88f8f/regex-2024.11.6-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:e5364a4502efca094731680e80009632ad6624084aff9a23ce8c8c6820de3e51", size = 860138, upload-time = "2024-11-06T20:10:36.142Z" },
|
| 2544 |
+
{ url = "https://files.pythonhosted.org/packages/93/2d/dd56bb76bd8e95bbce684326302f287455b56242a4f9c61f1bc76e28360e/regex-2024.11.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0a86e7eeca091c09e021db8eb72d54751e527fa47b8d5787caf96d9831bd02ad", size = 787692, upload-time = "2024-11-06T20:10:38.394Z" },
|
| 2545 |
+
{ url = "https://files.pythonhosted.org/packages/0b/55/31877a249ab7a5156758246b9c59539abbeba22461b7d8adc9e8475ff73e/regex-2024.11.6-cp312-cp312-win32.whl", hash = "sha256:32f9a4c643baad4efa81d549c2aadefaeba12249b2adc5af541759237eee1c54", size = 262135, upload-time = "2024-11-06T20:10:40.367Z" },
|
| 2546 |
+
{ url = "https://files.pythonhosted.org/packages/38/ec/ad2d7de49a600cdb8dd78434a1aeffe28b9d6fc42eb36afab4a27ad23384/regex-2024.11.6-cp312-cp312-win_amd64.whl", hash = "sha256:a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b", size = 273567, upload-time = "2024-11-06T20:10:43.467Z" },
|
| 2547 |
+
{ url = "https://files.pythonhosted.org/packages/90/73/bcb0e36614601016552fa9344544a3a2ae1809dc1401b100eab02e772e1f/regex-2024.11.6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84", size = 483525, upload-time = "2024-11-06T20:10:45.19Z" },
|
| 2548 |
+
{ url = "https://files.pythonhosted.org/packages/0f/3f/f1a082a46b31e25291d830b369b6b0c5576a6f7fb89d3053a354c24b8a83/regex-2024.11.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4", size = 288324, upload-time = "2024-11-06T20:10:47.177Z" },
|
| 2549 |
+
{ url = "https://files.pythonhosted.org/packages/09/c9/4e68181a4a652fb3ef5099e077faf4fd2a694ea6e0f806a7737aff9e758a/regex-2024.11.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0", size = 284617, upload-time = "2024-11-06T20:10:49.312Z" },
|
| 2550 |
+
{ url = "https://files.pythonhosted.org/packages/fc/fd/37868b75eaf63843165f1d2122ca6cb94bfc0271e4428cf58c0616786dce/regex-2024.11.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0", size = 795023, upload-time = "2024-11-06T20:10:51.102Z" },
|
| 2551 |
+
{ url = "https://files.pythonhosted.org/packages/c4/7c/d4cd9c528502a3dedb5c13c146e7a7a539a3853dc20209c8e75d9ba9d1b2/regex-2024.11.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7", size = 833072, upload-time = "2024-11-06T20:10:52.926Z" },
|
| 2552 |
+
{ url = "https://files.pythonhosted.org/packages/4f/db/46f563a08f969159c5a0f0e722260568425363bea43bb7ae370becb66a67/regex-2024.11.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7", size = 823130, upload-time = "2024-11-06T20:10:54.828Z" },
|
| 2553 |
+
{ url = "https://files.pythonhosted.org/packages/db/60/1eeca2074f5b87df394fccaa432ae3fc06c9c9bfa97c5051aed70e6e00c2/regex-2024.11.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c", size = 796857, upload-time = "2024-11-06T20:10:56.634Z" },
|
| 2554 |
+
{ url = "https://files.pythonhosted.org/packages/10/db/ac718a08fcee981554d2f7bb8402f1faa7e868c1345c16ab1ebec54b0d7b/regex-2024.11.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3", size = 784006, upload-time = "2024-11-06T20:10:59.369Z" },
|
| 2555 |
+
{ url = "https://files.pythonhosted.org/packages/c2/41/7da3fe70216cea93144bf12da2b87367590bcf07db97604edeea55dac9ad/regex-2024.11.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07", size = 781650, upload-time = "2024-11-06T20:11:02.042Z" },
|
| 2556 |
+
{ url = "https://files.pythonhosted.org/packages/a7/d5/880921ee4eec393a4752e6ab9f0fe28009435417c3102fc413f3fe81c4e5/regex-2024.11.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e", size = 789545, upload-time = "2024-11-06T20:11:03.933Z" },
|
| 2557 |
+
{ url = "https://files.pythonhosted.org/packages/dc/96/53770115e507081122beca8899ab7f5ae28ae790bfcc82b5e38976df6a77/regex-2024.11.6-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6", size = 853045, upload-time = "2024-11-06T20:11:06.497Z" },
|
| 2558 |
+
{ url = "https://files.pythonhosted.org/packages/31/d3/1372add5251cc2d44b451bd94f43b2ec78e15a6e82bff6a290ef9fd8f00a/regex-2024.11.6-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4", size = 860182, upload-time = "2024-11-06T20:11:09.06Z" },
|
| 2559 |
+
{ url = "https://files.pythonhosted.org/packages/ed/e3/c446a64984ea9f69982ba1a69d4658d5014bc7a0ea468a07e1a1265db6e2/regex-2024.11.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d", size = 787733, upload-time = "2024-11-06T20:11:11.256Z" },
|
| 2560 |
+
{ url = "https://files.pythonhosted.org/packages/2b/f1/e40c8373e3480e4f29f2692bd21b3e05f296d3afebc7e5dcf21b9756ca1c/regex-2024.11.6-cp313-cp313-win32.whl", hash = "sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff", size = 262122, upload-time = "2024-11-06T20:11:13.161Z" },
|
| 2561 |
+
{ url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl", hash = "sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a", size = 273545, upload-time = "2024-11-06T20:11:15Z" },
|
| 2562 |
+
]
|
| 2563 |
+
|
| 2564 |
[[package]]
|
| 2565 |
name = "requests"
|
| 2566 |
version = "2.32.3"
|
|
|
|
| 2627 |
{ url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl", hash = "sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0", size = 243229, upload-time = "2025-03-30T14:15:12.283Z" },
|
| 2628 |
]
|
| 2629 |
|
| 2630 |
+
[[package]]
|
| 2631 |
+
name = "rsa"
|
| 2632 |
+
version = "4.9.1"
|
| 2633 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2634 |
+
dependencies = [
|
| 2635 |
+
{ name = "pyasn1" },
|
| 2636 |
+
]
|
| 2637 |
+
sdist = { url = "https://files.pythonhosted.org/packages/da/8a/22b7beea3ee0d44b1916c0c1cb0ee3af23b700b6da9f04991899d0c555d4/rsa-4.9.1.tar.gz", hash = "sha256:e7bdbfdb5497da4c07dfd35530e1a902659db6ff241e39d9953cad06ebd0ae75", size = 29034, upload-time = "2025-04-16T09:51:18.218Z" }
|
| 2638 |
+
wheels = [
|
| 2639 |
+
{ url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl", hash = "sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762", size = 34696, upload-time = "2025-04-16T09:51:17.142Z" },
|
| 2640 |
+
]
|
| 2641 |
+
|
| 2642 |
[[package]]
|
| 2643 |
name = "ruff"
|
| 2644 |
version = "0.11.12"
|
|
|
|
| 2664 |
{ url = "https://files.pythonhosted.org/packages/44/42/d58086ec20f52d2b0140752ae54b355ea2be2ed46f914231136dd1effcc7/ruff-0.11.12-py3-none-win_arm64.whl", hash = "sha256:65194e37853158d368e333ba282217941029a28ea90913c67e558c611d04daa5", size = 10697770, upload-time = "2025-05-29T13:31:38.009Z" },
|
| 2665 |
]
|
| 2666 |
|
| 2667 |
+
[[package]]
|
| 2668 |
+
name = "s3transfer"
|
| 2669 |
+
version = "0.13.0"
|
| 2670 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2671 |
+
dependencies = [
|
| 2672 |
+
{ name = "botocore" },
|
| 2673 |
+
]
|
| 2674 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ed/5d/9dcc100abc6711e8247af5aa561fc07c4a046f72f659c3adea9a449e191a/s3transfer-0.13.0.tar.gz", hash = "sha256:f5e6db74eb7776a37208001113ea7aa97695368242b364d73e91c981ac522177", size = 150232, upload-time = "2025-05-22T19:24:50.245Z" }
|
| 2675 |
+
wheels = [
|
| 2676 |
+
{ url = "https://files.pythonhosted.org/packages/18/17/22bf8155aa0ea2305eefa3a6402e040df7ebe512d1310165eda1e233c3f8/s3transfer-0.13.0-py3-none-any.whl", hash = "sha256:0148ef34d6dd964d0d8cf4311b2b21c474693e57c2e069ec708ce043d2b527be", size = 85152, upload-time = "2025-05-22T19:24:48.703Z" },
|
| 2677 |
+
]
|
| 2678 |
+
|
| 2679 |
[[package]]
|
| 2680 |
name = "safehttpx"
|
| 2681 |
version = "0.1.6"
|
|
|
|
| 2855 |
{ url = "https://files.pythonhosted.org/packages/bc/10/440f1ba3d4955e0dc740bbe4ce8968c254a3d644d013eb75eea729becdb8/soxr-0.5.0.post1-cp312-abi3-win_amd64.whl", hash = "sha256:b1be9fee90afb38546bdbd7bde714d1d9a8c5a45137f97478a83b65e7f3146f6", size = 164937, upload-time = "2024-08-31T03:43:23.671Z" },
|
| 2856 |
]
|
| 2857 |
|
| 2858 |
+
[[package]]
|
| 2859 |
+
name = "sqlalchemy"
|
| 2860 |
+
version = "2.0.41"
|
| 2861 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2862 |
+
dependencies = [
|
| 2863 |
+
{ name = "greenlet", marker = "(python_full_version < '3.14' and platform_machine == 'AMD64') or (python_full_version < '3.14' and platform_machine == 'WIN32') or (python_full_version < '3.14' and platform_machine == 'aarch64') or (python_full_version < '3.14' and platform_machine == 'amd64') or (python_full_version < '3.14' and platform_machine == 'ppc64le') or (python_full_version < '3.14' and platform_machine == 'win32') or (python_full_version < '3.14' and platform_machine == 'x86_64')" },
|
| 2864 |
+
{ name = "typing-extensions" },
|
| 2865 |
+
]
|
| 2866 |
+
sdist = { url = "https://files.pythonhosted.org/packages/63/66/45b165c595ec89aa7dcc2c1cd222ab269bc753f1fc7a1e68f8481bd957bf/sqlalchemy-2.0.41.tar.gz", hash = "sha256:edba70118c4be3c2b1f90754d308d0b79c6fe2c0fdc52d8ddf603916f83f4db9", size = 9689424, upload-time = "2025-05-14T17:10:32.339Z" }
|
| 2867 |
+
wheels = [
|
| 2868 |
+
{ url = "https://files.pythonhosted.org/packages/3e/2a/f1f4e068b371154740dd10fb81afb5240d5af4aa0087b88d8b308b5429c2/sqlalchemy-2.0.41-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:81f413674d85cfd0dfcd6512e10e0f33c19c21860342a4890c3a2b59479929f9", size = 2119645, upload-time = "2025-05-14T17:55:24.854Z" },
|
| 2869 |
+
{ url = "https://files.pythonhosted.org/packages/9b/e8/c664a7e73d36fbfc4730f8cf2bf930444ea87270f2825efbe17bf808b998/sqlalchemy-2.0.41-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:598d9ebc1e796431bbd068e41e4de4dc34312b7aa3292571bb3674a0cb415dd1", size = 2107399, upload-time = "2025-05-14T17:55:28.097Z" },
|
| 2870 |
+
{ url = "https://files.pythonhosted.org/packages/5c/78/8a9cf6c5e7135540cb682128d091d6afa1b9e48bd049b0d691bf54114f70/sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a104c5694dfd2d864a6f91b0956eb5d5883234119cb40010115fd45a16da5e70", size = 3293269, upload-time = "2025-05-14T17:50:38.227Z" },
|
| 2871 |
+
{ url = "https://files.pythonhosted.org/packages/3c/35/f74add3978c20de6323fb11cb5162702670cc7a9420033befb43d8d5b7a4/sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6145afea51ff0af7f2564a05fa95eb46f542919e6523729663a5d285ecb3cf5e", size = 3303364, upload-time = "2025-05-14T17:51:49.829Z" },
|
| 2872 |
+
{ url = "https://files.pythonhosted.org/packages/6a/d4/c990f37f52c3f7748ebe98883e2a0f7d038108c2c5a82468d1ff3eec50b7/sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:b46fa6eae1cd1c20e6e6f44e19984d438b6b2d8616d21d783d150df714f44078", size = 3229072, upload-time = "2025-05-14T17:50:39.774Z" },
|
| 2873 |
+
{ url = "https://files.pythonhosted.org/packages/15/69/cab11fecc7eb64bc561011be2bd03d065b762d87add52a4ca0aca2e12904/sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41836fe661cc98abfae476e14ba1906220f92c4e528771a8a3ae6a151242d2ae", size = 3268074, upload-time = "2025-05-14T17:51:51.736Z" },
|
| 2874 |
+
{ url = "https://files.pythonhosted.org/packages/5c/ca/0c19ec16858585d37767b167fc9602593f98998a68a798450558239fb04a/sqlalchemy-2.0.41-cp312-cp312-win32.whl", hash = "sha256:a8808d5cf866c781150d36a3c8eb3adccfa41a8105d031bf27e92c251e3969d6", size = 2084514, upload-time = "2025-05-14T17:55:49.915Z" },
|
| 2875 |
+
{ url = "https://files.pythonhosted.org/packages/7f/23/4c2833d78ff3010a4e17f984c734f52b531a8c9060a50429c9d4b0211be6/sqlalchemy-2.0.41-cp312-cp312-win_amd64.whl", hash = "sha256:5b14e97886199c1f52c14629c11d90c11fbb09e9334fa7bb5f6d068d9ced0ce0", size = 2111557, upload-time = "2025-05-14T17:55:51.349Z" },
|
| 2876 |
+
{ url = "https://files.pythonhosted.org/packages/d3/ad/2e1c6d4f235a97eeef52d0200d8ddda16f6c4dd70ae5ad88c46963440480/sqlalchemy-2.0.41-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4eeb195cdedaf17aab6b247894ff2734dcead6c08f748e617bfe05bd5a218443", size = 2115491, upload-time = "2025-05-14T17:55:31.177Z" },
|
| 2877 |
+
{ url = "https://files.pythonhosted.org/packages/cf/8d/be490e5db8400dacc89056f78a52d44b04fbf75e8439569d5b879623a53b/sqlalchemy-2.0.41-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d4ae769b9c1c7757e4ccce94b0641bc203bbdf43ba7a2413ab2523d8d047d8dc", size = 2102827, upload-time = "2025-05-14T17:55:34.921Z" },
|
| 2878 |
+
{ url = "https://files.pythonhosted.org/packages/a0/72/c97ad430f0b0e78efaf2791342e13ffeafcbb3c06242f01a3bb8fe44f65d/sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a62448526dd9ed3e3beedc93df9bb6b55a436ed1474db31a2af13b313a70a7e1", size = 3225224, upload-time = "2025-05-14T17:50:41.418Z" },
|
| 2879 |
+
{ url = "https://files.pythonhosted.org/packages/5e/51/5ba9ea3246ea068630acf35a6ba0d181e99f1af1afd17e159eac7e8bc2b8/sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc56c9788617b8964ad02e8fcfeed4001c1f8ba91a9e1f31483c0dffb207002a", size = 3230045, upload-time = "2025-05-14T17:51:54.722Z" },
|
| 2880 |
+
{ url = "https://files.pythonhosted.org/packages/78/2f/8c14443b2acea700c62f9b4a8bad9e49fc1b65cfb260edead71fd38e9f19/sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c153265408d18de4cc5ded1941dcd8315894572cddd3c58df5d5b5705b3fa28d", size = 3159357, upload-time = "2025-05-14T17:50:43.483Z" },
|
| 2881 |
+
{ url = "https://files.pythonhosted.org/packages/fc/b2/43eacbf6ccc5276d76cea18cb7c3d73e294d6fb21f9ff8b4eef9b42bbfd5/sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f67766965996e63bb46cfbf2ce5355fc32d9dd3b8ad7e536a920ff9ee422e23", size = 3197511, upload-time = "2025-05-14T17:51:57.308Z" },
|
| 2882 |
+
{ url = "https://files.pythonhosted.org/packages/fa/2e/677c17c5d6a004c3c45334ab1dbe7b7deb834430b282b8a0f75ae220c8eb/sqlalchemy-2.0.41-cp313-cp313-win32.whl", hash = "sha256:bfc9064f6658a3d1cadeaa0ba07570b83ce6801a1314985bf98ec9b95d74e15f", size = 2082420, upload-time = "2025-05-14T17:55:52.69Z" },
|
| 2883 |
+
{ url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl", hash = "sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df", size = 2108329, upload-time = "2025-05-14T17:55:54.495Z" },
|
| 2884 |
+
{ url = "https://files.pythonhosted.org/packages/1c/fc/9ba22f01b5cdacc8f5ed0d22304718d2c758fce3fd49a5372b886a86f37c/sqlalchemy-2.0.41-py3-none-any.whl", hash = "sha256:57df5dc6fdb5ed1a88a1ed2195fd31927e705cad62dedd86b46972752a80f576", size = 1911224, upload-time = "2025-05-14T17:39:42.154Z" },
|
| 2885 |
+
]
|
| 2886 |
+
|
| 2887 |
+
[package.optional-dependencies]
|
| 2888 |
+
asyncio = [
|
| 2889 |
+
{ name = "greenlet" },
|
| 2890 |
+
]
|
| 2891 |
+
|
| 2892 |
[[package]]
|
| 2893 |
name = "sse-starlette"
|
| 2894 |
version = "2.3.6"
|
|
|
|
| 2947 |
{ url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl", hash = "sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35", size = 72037, upload-time = "2025-04-13T13:56:16.21Z" },
|
| 2948 |
]
|
| 2949 |
|
| 2950 |
+
[[package]]
|
| 2951 |
+
name = "striprtf"
|
| 2952 |
+
version = "0.0.26"
|
| 2953 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2954 |
+
sdist = { url = "https://files.pythonhosted.org/packages/25/20/3d419008265346452d09e5dadfd5d045b64b40d8fc31af40588e6c76997a/striprtf-0.0.26.tar.gz", hash = "sha256:fdb2bba7ac440072d1c41eab50d8d74ae88f60a8b6575c6e2c7805dc462093aa", size = 6258, upload-time = "2023-07-20T14:30:36.29Z" }
|
| 2955 |
+
wheels = [
|
| 2956 |
+
{ url = "https://files.pythonhosted.org/packages/a3/cf/0fea4f4ba3fc2772ac2419278aa9f6964124d4302117d61bc055758e000c/striprtf-0.0.26-py3-none-any.whl", hash = "sha256:8c8f9d32083cdc2e8bfb149455aa1cc5a4e0a035893bedc75db8b73becb3a1bb", size = 6914, upload-time = "2023-07-20T14:30:35.338Z" },
|
| 2957 |
+
]
|
| 2958 |
+
|
| 2959 |
[[package]]
|
| 2960 |
name = "sympy"
|
| 2961 |
version = "1.14.0"
|
|
|
|
| 2981 |
{ url = "https://files.pythonhosted.org/packages/35/8a/fd0a54e4bc7d09e6296efc7e9712f16e0001e82a13a90acb1e5729d34b39/synchronicity-0.9.13-py3-none-any.whl", hash = "sha256:762bb5f84def464b2c7dbb944d4f19c3336a12ed7046bc5d9646f0b4a3f6a0d5", size = 36974, upload-time = "2025-06-04T13:31:52.341Z" },
|
| 2982 |
]
|
| 2983 |
|
| 2984 |
+
[[package]]
|
| 2985 |
+
name = "tenacity"
|
| 2986 |
+
version = "9.1.2"
|
| 2987 |
+
source = { registry = "https://pypi.org/simple" }
|
| 2988 |
+
sdist = { url = "https://files.pythonhosted.org/packages/0a/d4/2b0cd0fe285e14b36db076e78c93766ff1d529d70408bd1d2a5a84f1d929/tenacity-9.1.2.tar.gz", hash = "sha256:1169d376c297e7de388d18b4481760d478b0e99a777cad3a9c86e556f4b697cb", size = 48036, upload-time = "2025-04-02T08:25:09.966Z" }
|
| 2989 |
+
wheels = [
|
| 2990 |
+
{ url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl", hash = "sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138", size = 28248, upload-time = "2025-04-02T08:25:07.678Z" },
|
| 2991 |
+
]
|
| 2992 |
+
|
| 2993 |
[[package]]
|
| 2994 |
name = "tensorboard"
|
| 2995 |
version = "2.19.0"
|
|
|
|
| 3084 |
{ url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl", hash = "sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb", size = 18638, upload-time = "2025-03-13T13:49:21.846Z" },
|
| 3085 |
]
|
| 3086 |
|
| 3087 |
+
[[package]]
|
| 3088 |
+
name = "tiktoken"
|
| 3089 |
+
version = "0.9.0"
|
| 3090 |
+
source = { registry = "https://pypi.org/simple" }
|
| 3091 |
+
dependencies = [
|
| 3092 |
+
{ name = "regex" },
|
| 3093 |
+
{ name = "requests" },
|
| 3094 |
+
]
|
| 3095 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ea/cf/756fedf6981e82897f2d570dd25fa597eb3f4459068ae0572d7e888cfd6f/tiktoken-0.9.0.tar.gz", hash = "sha256:d02a5ca6a938e0490e1ff957bc48c8b078c88cb83977be1625b1fd8aac792c5d", size = 35991, upload-time = "2025-02-14T06:03:01.003Z" }
|
| 3096 |
+
wheels = [
|
| 3097 |
+
{ url = "https://files.pythonhosted.org/packages/cf/e5/21ff33ecfa2101c1bb0f9b6df750553bd873b7fb532ce2cb276ff40b197f/tiktoken-0.9.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:e88f121c1c22b726649ce67c089b90ddda8b9662545a8aeb03cfef15967ddd03", size = 1065073, upload-time = "2025-02-14T06:02:24.768Z" },
|
| 3098 |
+
{ url = "https://files.pythonhosted.org/packages/8e/03/a95e7b4863ee9ceec1c55983e4cc9558bcfd8f4f80e19c4f8a99642f697d/tiktoken-0.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a6600660f2f72369acb13a57fb3e212434ed38b045fd8cc6cdd74947b4b5d210", size = 1008075, upload-time = "2025-02-14T06:02:26.92Z" },
|
| 3099 |
+
{ url = "https://files.pythonhosted.org/packages/40/10/1305bb02a561595088235a513ec73e50b32e74364fef4de519da69bc8010/tiktoken-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95e811743b5dfa74f4b227927ed86cbc57cad4df859cb3b643be797914e41794", size = 1140754, upload-time = "2025-02-14T06:02:28.124Z" },
|
| 3100 |
+
{ url = "https://files.pythonhosted.org/packages/1b/40/da42522018ca496432ffd02793c3a72a739ac04c3794a4914570c9bb2925/tiktoken-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99376e1370d59bcf6935c933cb9ba64adc29033b7e73f5f7569f3aad86552b22", size = 1196678, upload-time = "2025-02-14T06:02:29.845Z" },
|
| 3101 |
+
{ url = "https://files.pythonhosted.org/packages/5c/41/1e59dddaae270ba20187ceb8aa52c75b24ffc09f547233991d5fd822838b/tiktoken-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:badb947c32739fb6ddde173e14885fb3de4d32ab9d8c591cbd013c22b4c31dd2", size = 1259283, upload-time = "2025-02-14T06:02:33.838Z" },
|
| 3102 |
+
{ url = "https://files.pythonhosted.org/packages/5b/64/b16003419a1d7728d0d8c0d56a4c24325e7b10a21a9dd1fc0f7115c02f0a/tiktoken-0.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:5a62d7a25225bafed786a524c1b9f0910a1128f4232615bf3f8257a73aaa3b16", size = 894897, upload-time = "2025-02-14T06:02:36.265Z" },
|
| 3103 |
+
{ url = "https://files.pythonhosted.org/packages/7a/11/09d936d37f49f4f494ffe660af44acd2d99eb2429d60a57c71318af214e0/tiktoken-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2b0e8e05a26eda1249e824156d537015480af7ae222ccb798e5234ae0285dbdb", size = 1064919, upload-time = "2025-02-14T06:02:37.494Z" },
|
| 3104 |
+
{ url = "https://files.pythonhosted.org/packages/80/0e/f38ba35713edb8d4197ae602e80837d574244ced7fb1b6070b31c29816e0/tiktoken-0.9.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:27d457f096f87685195eea0165a1807fae87b97b2161fe8c9b1df5bd74ca6f63", size = 1007877, upload-time = "2025-02-14T06:02:39.516Z" },
|
| 3105 |
+
{ url = "https://files.pythonhosted.org/packages/fe/82/9197f77421e2a01373e27a79dd36efdd99e6b4115746ecc553318ecafbf0/tiktoken-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cf8ded49cddf825390e36dd1ad35cd49589e8161fdcb52aa25f0583e90a3e01", size = 1140095, upload-time = "2025-02-14T06:02:41.791Z" },
|
| 3106 |
+
{ url = "https://files.pythonhosted.org/packages/f2/bb/4513da71cac187383541facd0291c4572b03ec23c561de5811781bbd988f/tiktoken-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc156cb314119a8bb9748257a2eaebd5cc0753b6cb491d26694ed42fc7cb3139", size = 1195649, upload-time = "2025-02-14T06:02:43Z" },
|
| 3107 |
+
{ url = "https://files.pythonhosted.org/packages/fa/5c/74e4c137530dd8504e97e3a41729b1103a4ac29036cbfd3250b11fd29451/tiktoken-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:cd69372e8c9dd761f0ab873112aba55a0e3e506332dd9f7522ca466e817b1b7a", size = 1258465, upload-time = "2025-02-14T06:02:45.046Z" },
|
| 3108 |
+
{ url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl", hash = "sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95", size = 894669, upload-time = "2025-02-14T06:02:47.341Z" },
|
| 3109 |
+
]
|
| 3110 |
+
|
| 3111 |
[[package]]
|
| 3112 |
name = "toml"
|
| 3113 |
version = "0.10.2"
|
|
|
|
| 3245 |
{ url = "https://files.pythonhosted.org/packages/69/e0/552843e0d356fbb5256d21449fa957fa4eff3bbc135a74a691ee70c7c5da/typing_extensions-4.14.0-py3-none-any.whl", hash = "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af", size = 43839, upload-time = "2025-06-02T14:52:10.026Z" },
|
| 3246 |
]
|
| 3247 |
|
| 3248 |
+
[[package]]
|
| 3249 |
+
name = "typing-inspect"
|
| 3250 |
+
version = "0.9.0"
|
| 3251 |
+
source = { registry = "https://pypi.org/simple" }
|
| 3252 |
+
dependencies = [
|
| 3253 |
+
{ name = "mypy-extensions" },
|
| 3254 |
+
{ name = "typing-extensions" },
|
| 3255 |
+
]
|
| 3256 |
+
sdist = { url = "https://files.pythonhosted.org/packages/dc/74/1789779d91f1961fa9438e9a8710cdae6bd138c80d7303996933d117264a/typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78", size = 13825, upload-time = "2023-05-24T20:25:47.612Z" }
|
| 3257 |
+
wheels = [
|
| 3258 |
+
{ url = "https://files.pythonhosted.org/packages/65/f3/107a22063bf27bdccf2024833d3445f4eea42b2e598abfbd46f6a63b6cb0/typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f", size = 8827, upload-time = "2023-05-24T20:25:45.287Z" },
|
| 3259 |
+
]
|
| 3260 |
+
|
| 3261 |
[[package]]
|
| 3262 |
name = "typing-inspection"
|
| 3263 |
version = "0.4.1"
|