|
|
INFO: Started server process [2909266] |
|
|
INFO: Waiting for application startup. |
|
|
INFO:__main__:Initializing VoiceKit MCP connection... |
|
|
INFO:httpx:HTTP Request: GET https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/sse "HTTP/1.1 200 OK" |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP connected. Tools: ['voicekit_extract_embedding', 'voicekit_compare_voices', 'voicekit_analyze_acoustic_features', 'voicekit_transcribe_audio', 'voicekit_isolate_voice', 'voicekit_analyze_voice_similarity'] |
|
|
INFO: Application startup complete. |
|
|
INFO: Uvicorn running on http://0.0.0.0:8002 (Press CTRL+C to quit) |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO: 127.0.0.1:49922 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 222.3KB → 80.7KB (63.7% reduction) in 271.2ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 271.4ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 7876.5ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0, 'transcript': 0, 'overall': 100.0, 'user_text': ''} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4174.7ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Focus on improving pronunciation (score: 0/100)', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 12323.2ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 100.0, 'advice': 'Focus on improving pronunciation (score: 0/100)', 'is_correct': True, 'guess_timestamp': 1764230530805, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=100.0, correct=True |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:48388 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:36388 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 294.6KB → 107.0KB (63.7% reduction) in 278.1ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 278.4ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 2/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 5564.3ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0, 'transcript': 0, 'overall': 100.0, 'user_text': ''} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3453.2ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Focus on improving pronunciation (score: 0/100)', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 9296.8ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 100.0, 'advice': 'Focus on improving pronunciation (score: 0/100)', 'is_correct': True, 'guess_timestamp': 1764230550605, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=100.0, correct=True |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:57332 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:57336 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 160.2KB → 58.2KB (63.7% reduction) in 248.7ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 249.2ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.4ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 3/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 5379.0ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0, 'transcript': 0, 'overall': 100.0, 'user_text': ''} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3321.7ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Focus on improving pronunciation (score: 0/100)', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 8951.1ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 100.0, 'advice': 'Focus on improving pronunciation (score: 0/100)', 'is_correct': True, 'guess_timestamp': 1764230568279, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=100.0, correct=True |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:44184 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:37420 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 67.2KB → 24.5KB (63.6% reduction) in 208.3ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 208.6ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 4/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 3917.4ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0, 'transcript': 0, 'overall': 100.0, 'user_text': ''} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 4, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 5050.0ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': "This incredibly popular children's song became a global viral sensation.", 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 9176.9ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 100.0, 'advice': "This incredibly popular children's song became a global viral sensation.", 'is_correct': True, 'guess_timestamp': 1764230626253, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=100.0, correct=True |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 158, has_function_call: False |
|
|
INFO: 127.0.0.1:49858 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:50648 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 625.4KB → 227.0KB (63.7% reduction) in 349.6ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 350.2ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 5/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 7094.3ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0, 'transcript': 0, 'overall': 100.0, 'user_text': ''} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4290.5ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Focus on improving pronunciation (score: 0/100)', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 11735.6ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 100.0, 'advice': 'Focus on improving pronunciation (score: 0/100)', 'is_correct': True, 'guess_timestamp': 1764230697630, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=100.0, correct=True |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:42760 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:38540 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=85b92e03-86fb-4b44-afdc-e845571d1f06 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 475.5KB → 73.0KB (84.7% reduction) in 328.1ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 328.4ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 85b92e03-86fb-4b44-afdc-e845571d1f06: Attempt 6/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 3741.8ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 10.0, 'transcript': 5.0, 'overall': 16.8, 'user_text': 'Hello?'} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3568.2ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Focus on improving pronunciation (score: 10/100)', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 7639.1ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '85b92e03-86fb-4b44-afdc-e845571d1f06', 'puzzle_number': 3, 'pitch': 100.0, 'rhythm': 100.0, 'energy': 100.0, 'pronunciation': 10.0, 'transcript': 5.0, 'overall': 16.8, 'advice': 'Focus on improving pronunciation (score: 10/100)', 'is_correct': False, 'guess_timestamp': 1764230726184, 'user_text': 'Hello?'}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=16.8, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:44692 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:35682 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=74f86fba-88a7-4f12-b57e-a73c398fc60d |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 330.8KB → 120.1KB (63.7% reduction) in 279.5ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 280.0ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.3ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 74f86fba-88a7-4f12-b57e-a73c398fc60d: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 1967.4ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 1, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3203.5ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'This sequence is known for its repetitive nature.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5451.8ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '74f86fba-88a7-4f12-b57e-a73c398fc60d', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'This sequence is known for its repetitive nature.', 'is_correct': False, 'guess_timestamp': 1764231113169, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 103, has_function_call: False |
|
|
INFO: 127.0.0.1:35364 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:37218 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=9d1a88f9-93cb-453e-831d-003ca5506dcb |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 480.7KB → 174.5KB (63.7% reduction) in 327.9ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 328.7ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 9d1a88f9-93cb-453e-831d-003ca5506dcb: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 1994.3ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
ERROR:__main__:Hint generation error: list index out of range |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4104.0ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Keep practicing! Focus on your pronunciation.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 6427.8ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '9d1a88f9-93cb-453e-831d-003ca5506dcb', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'Keep practicing! Focus on your pronunciation.', 'is_correct': False, 'guess_timestamp': 1764231387226, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:33432 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=9d1a88f9-93cb-453e-831d-003ca5506dcb |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 485.8KB → 117.0KB (75.9% reduction) in 331.2ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 331.6ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 9d1a88f9-93cb-453e-831d-003ca5506dcb: Attempt 2/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 3757.4ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 2, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3068.0ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'This popular song often features a very simple, repetitive phrase.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 7157.7ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '9d1a88f9-93cb-453e-831d-003ca5506dcb', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'This popular song often features a very simple, repetitive phrase.', 'is_correct': False, 'guess_timestamp': 1764231410080, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 120, has_function_call: False |
|
|
INFO: 127.0.0.1:59000 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:55086 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=72fbe861-5008-48a4-ad59-a4202902d27d |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 191.3KB → 69.5KB (63.7% reduction) in 257.5ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 257.8ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.3ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 72fbe861-5008-48a4-ad59-a4202902d27d: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 7023.4ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 1, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4314.1ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'This very memorable phrase is often repeated and has a well-known associated motion.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 11596.0ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '72fbe861-5008-48a4-ad59-a4202902d27d', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'This very memorable phrase is often repeated and has a well-known associated motion.', 'is_correct': False, 'guess_timestamp': 1764231927203, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 138, has_function_call: False |
|
|
INFO: 127.0.0.1:36742 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=72fbe861-5008-48a4-ad59-a4202902d27d |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 191.3KB → 69.5KB (63.7% reduction) in 258.6ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 258.8ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 72fbe861-5008-48a4-ad59-a4202902d27d: Attempt 2/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 1667.1ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 2, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3533.3ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'You might recognize this catchy song from a younger audience.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5459.8ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '72fbe861-5008-48a4-ad59-a4202902d27d', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'You might recognize this catchy song from a younger audience.', 'is_correct': False, 'guess_timestamp': 1764231935740, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 115, has_function_call: False |
|
|
INFO: 127.0.0.1:37742 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=72fbe861-5008-48a4-ad59-a4202902d27d |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 191.3KB → 69.5KB (63.7% reduction) in 260.0ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 260.3ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 72fbe861-5008-48a4-ad59-a4202902d27d: Attempt 3/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 1431.7ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 3, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4401.2ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'This highly repetitive and catchy song is extremely popular with young children and often features a specific family of sea creatures.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 6093.8ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '72fbe861-5008-48a4-ad59-a4202902d27d', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'This highly repetitive and catchy song is extremely popular with young children and often features a specific family of sea creatures.', 'is_correct': False, 'guess_timestamp': 1764231945075, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 188, has_function_call: False |
|
|
INFO: 127.0.0.1:37628 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:50834 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=373da787-861c-4ed5-83d1-e31132ab82f2 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 98.2KB → 35.7KB (63.7% reduction) in 208.8ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 209.2ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 373da787-861c-4ed5-83d1-e31132ab82f2: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 2056.2ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Hint generation error: Unterminated string starting at: line 6 column 7 (char 122) |
|
|
INFO:__main__:⏱️ Gemini hint generation: 4018.0ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Keep practicing! Focus on your pronunciation.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 6284.3ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '373da787-861c-4ed5-83d1-e31132ab82f2', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'Keep practicing! Focus on your pronunciation.', 'is_correct': False, 'guess_timestamp': 1764232282995, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 127, has_function_call: False |
|
|
INFO: 127.0.0.1:52996 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=373da787-861c-4ed5-83d1-e31132ab82f2 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 98.2KB → 35.7KB (63.7% reduction) in 200.7ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 200.9ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 373da787-861c-4ed5-83d1-e31132ab82f2: Attempt 2/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 3575.9ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 503 Service Unavailable" |
|
|
Traceback (most recent call last): |
|
|
File "/home/samuel/elevenlabs/gradio/gemini_adapter.py", line 157, in call_gemini_with_tools |
|
|
response = client.models.generate_content( |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/models.py", line 5218, in generate_content |
|
|
response = self._generate_content( |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/models.py", line 4000, in _generate_content |
|
|
response = self._api_client.request( |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/_api_client.py", line 1388, in request |
|
|
response = self._request(http_request, http_options, stream=False) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/_api_client.py", line 1224, in _request |
|
|
return self._retry(self._request_once, http_request, stream) # type: ignore[no-any-return] |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/tenacity/__init__.py", line 477, in __call__ |
|
|
do = self.iter(retry_state=retry_state) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/tenacity/__init__.py", line 378, in iter |
|
|
result = action(retry_state) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/tenacity/__init__.py", line 420, in exc_check |
|
|
raise retry_exc.reraise() |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/tenacity/__init__.py", line 187, in reraise |
|
|
raise self.last_attempt.result() |
|
|
File "/usr/lib/python3.10/concurrent/futures/_base.py", line 451, in result |
|
|
return self.__get_result() |
|
|
File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result |
|
|
raise self._exception |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/tenacity/__init__.py", line 480, in __call__ |
|
|
result = fn(*args, **kwargs) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/_api_client.py", line 1201, in _request_once |
|
|
errors.APIError.raise_for_response(response) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/errors.py", line 106, in raise_for_response |
|
|
cls.raise_error(response.status_code, response_json, response) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/google/genai/errors.py", line 133, in raise_error |
|
|
raise ServerError(status_code, response_json, response) |
|
|
google.genai.errors.ServerError: 503 UNAVAILABLE. {'error': {'code': 503, 'message': 'The model is overloaded. Please try again later.', 'status': 'UNAVAILABLE'}} |
|
|
ERROR:__main__:Hint generation error: 503 UNAVAILABLE. {'error': {'code': 503, 'message': 'The model is overloaded. Please try again later.', 'status': 'UNAVAILABLE'}} |
|
|
INFO:__main__:⏱️ Gemini hint generation: 1907.5ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Keep practicing! Focus on your pronunciation.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5685.0ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '373da787-861c-4ed5-83d1-e31132ab82f2', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'Keep practicing! Focus on your pronunciation.', 'is_correct': False, 'guess_timestamp': 1764232299134, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter ERROR: ServerError: 503 UNAVAILABLE. {'error': {'code': 503, 'message': 'The model is overloaded. Please try again later.', 'status': 'UNAVAILABLE'}} |
|
|
INFO: 127.0.0.1:51248 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=373da787-861c-4ed5-83d1-e31132ab82f2 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 98.2KB → 35.7KB (63.7% reduction) in 203.0ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 203.2ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 373da787-861c-4ed5-83d1-e31132ab82f2: Attempt 3/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 2368.2ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 3, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3031.1ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': "This popular children's song features an animal from the ocean.", 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5603.1ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '373da787-861c-4ed5-83d1-e31132ab82f2', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': "This popular children's song features an animal from the ocean.", 'is_correct': False, 'guess_timestamp': 1764232307309, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 117, has_function_call: False |
|
|
INFO: 127.0.0.1:51948 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO: 127.0.0.1:45728 - "GET /api/dashboard HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=54300d79-af98-4179-a0be-957eb0635814 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 227.4KB → 82.6KB (63.7% reduction) in 259.2ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 259.5ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 54300d79-af98-4179-a0be-957eb0635814: Attempt 1/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 6348.2ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
ERROR:__main__:Gemini response error: AI response had no content. Please try again. |
|
|
ERROR:__main__:Hint generation error: list index out of range |
|
|
INFO:__main__:⏱️ Gemini hint generation: 3605.7ms |
|
|
INFO:__main__:Generated hints: {'type': 'advice', 'answer': [{'text': 'Keep practicing! Focus on your pronunciation.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 10214.1ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '54300d79-af98-4179-a0be-957eb0635814', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'Keep practicing! Focus on your pronunciation.', 'is_correct': False, 'guess_timestamp': 1764232610975, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: MAX_TOKENS |
|
|
DEBUG get_text: Content has parts: True |
|
|
WARNING get_text: No parts in content |
|
|
INFO: 127.0.0.1:49630 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=54300d79-af98-4179-a0be-957eb0635814 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 227.4KB → 82.6KB (63.7% reduction) in 261.8ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 262.2ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 54300d79-af98-4179-a0be-957eb0635814: Attempt 2/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 1919.2ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 2, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 2931.1ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': 'This is a very catchy and repetitive song, often associated with a younger audience.', 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5113.0ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '54300d79-af98-4179-a0be-957eb0635814', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': 'This is a very catchy and repetitive song, often associated with a younger audience.', 'is_correct': False, 'guess_timestamp': 1764232620411, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 138, has_function_call: False |
|
|
INFO: 127.0.0.1:51066 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
INFO:__main__:Received request: date=2025-11-27, session_id=54300d79-af98-4179-a0be-957eb0635814 |
|
|
INFO:__main__:Found puzzle: 3 - song |
|
|
INFO:__main__:🗜️ Audio compression: 227.4KB → 82.6KB (63.7% reduction) in 271.8ms |
|
|
INFO:__main__:⏱️ Base64 encoding: 272.1ms |
|
|
WARNING:__main__:⚠ No reference audio found for: reference_audio/song/babyshark.mp3 |
|
|
INFO:__main__:⏱️ Reference audio load: 0.2ms |
|
|
WARNING:__main__:⚠ No reference audio available, using user audio |
|
|
INFO:__main__:Session 54300d79-af98-4179-a0be-957eb0635814: Attempt 3/6 |
|
|
INFO:__main__:Calling VoiceKit MCP (attempt 1/3)... |
|
|
INFO:httpx:HTTP Request: POST https://mcp-1st-birthday-voicekit.hf.space/gradio_api/mcp/messages/?session_id=2a62a924b1b44162a71bd1cb3832b2eb "HTTP/1.1 202 Accepted" |
|
|
INFO:__main__:✓ VoiceKit MCP call successful |
|
|
INFO:__main__:⏱️ VoiceKit MCP call: 2405.6ms |
|
|
INFO:__main__:✓ Fresh VoiceKit analysis completed |
|
|
INFO:__main__:VoiceKit scores: {'error': "(<Status.FAILED_PRECONDITION: 9>, 'The app is stopped or disabled', None)"} |
|
|
INFO:google_genai.models:AFC is enabled with max remote calls: 10. |
|
|
INFO:httpx:HTTP Request: POST https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent "HTTP/1.1 200 OK" |
|
|
INFO:__main__:✓ Generated fresh hint for attempt 3, category song |
|
|
INFO:__main__:⏱️ Gemini hint generation: 2792.0ms |
|
|
INFO:__main__:Generated hints: {'type': 'hint', 'answer': [{'text': "This incredibly popular children's song features a very repetitive and recognizable chorus.", 'path': ''}]} |
|
|
INFO:__main__:⏱️ TOTAL REQUEST TIME: 5470.2ms |
|
|
ERROR:__main__:Failed to save guess record: (psycopg2.errors.UndefinedColumn) column "user_text" of relation "guess_records" does not exist |
|
|
LINE 4: ...pt, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
^ |
|
|
|
|
|
[SQL: |
|
|
INSERT INTO guess_records |
|
|
(session_id, puzzle_number, pitch, rhythm, energy, pronunciation, |
|
|
transcript, overall, advice, is_correct, guess_timestamp, user_text) |
|
|
VALUES |
|
|
(%(session_id)s, %(puzzle_number)s, %(pitch)s, %(rhythm)s, %(energy)s, %(pronunciation)s, |
|
|
%(transcript)s, %(overall)s, %(advice)s, %(is_correct)s, %(guess_timestamp)s, %(user_text)s) |
|
|
] |
|
|
[parameters: {'session_id': '54300d79-af98-4179-a0be-957eb0635814', 'puzzle_number': 3, 'pitch': 0.0, 'rhythm': 0.0, 'energy': 0.0, 'pronunciation': 0.0, 'transcript': 0.0, 'overall': 0.0, 'advice': "This incredibly popular children's song features a very repetitive and recognizable chorus.", 'is_correct': False, 'guess_timestamp': 1764232629423, 'user_text': ''}] |
|
|
(Background on this error at: https://sqlalche.me/e/20/f405) |
|
|
INFO:__main__:Analysis complete: category=song, overall=0.0, correct=False |
|
|
DEBUG gemini_adapter: Converted 1 messages to 1 Contents |
|
|
DEBUG gemini_adapter: Tools: 0 |
|
|
DEBUG gemini_adapter: Calling Gemini API... |
|
|
DEBUG gemini_adapter: Got response |
|
|
DEBUG gemini_adapter: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG gemini_adapter: Response has candidates: True |
|
|
DEBUG gemini_adapter: First candidate type: <class 'google.genai.types.Candidate'> |
|
|
DEBUG gemini_adapter: finish_reason: STOP |
|
|
DEBUG get_text: Response type: <class 'google.genai.types.GenerateContentResponse'> |
|
|
DEBUG get_text: Has candidates: True |
|
|
DEBUG get_text: Candidate has content: True |
|
|
DEBUG get_text: finish_reason: STOP |
|
|
DEBUG get_text: Content has parts: True |
|
|
DEBUG get_text: Part 0 has text: True |
|
|
DEBUG get_text: Extracted text length: 145, has_function_call: False |
|
|
INFO: 127.0.0.1:55780 - "POST /api/analyze-voice HTTP/1.1" 200 OK |
|
|
ERROR:mcp.client.sse:Error in sse_reader |
|
|
Traceback (most recent call last): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_transports/default.py", line 101, in map_httpcore_exceptions |
|
|
yield |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_transports/default.py", line 271, in __aiter__ |
|
|
async for part in self._httpcore_stream: |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/connection_pool.py", line 407, in __aiter__ |
|
|
raise exc from None |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/connection_pool.py", line 403, in __aiter__ |
|
|
async for part in self._stream: |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/http11.py", line 342, in __aiter__ |
|
|
raise exc |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/http11.py", line 334, in __aiter__ |
|
|
async for chunk in self._connection._receive_response_body(**kwargs): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/http11.py", line 203, in _receive_response_body |
|
|
event = await self._receive_event(timeout=timeout) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_async/http11.py", line 213, in _receive_event |
|
|
with map_exceptions({h11.RemoteProtocolError: RemoteProtocolError}): |
|
|
File "/usr/lib/python3.10/contextlib.py", line 153, in __exit__ |
|
|
self.gen.throw(typ, value, traceback) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpcore/_exceptions.py", line 14, in map_exceptions |
|
|
raise to_exc(exc) from exc |
|
|
httpcore.RemoteProtocolError: peer closed connection without sending complete message body (incomplete chunked read) |
|
|
|
|
|
The above exception was the direct cause of the following exception: |
|
|
|
|
|
Traceback (most recent call last): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/mcp/client/sse.py", line 73, in sse_reader |
|
|
async for sse in event_source.aiter_sse(): # pragma: no branch |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx_sse/_api.py", line 42, in aiter_sse |
|
|
async for line in lines: |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx_sse/_api.py", line 80, in _aiter_sse_lines |
|
|
async for text in response.aiter_text(): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_models.py", line 1018, in aiter_text |
|
|
async for byte_content in self.aiter_bytes(): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_models.py", line 997, in aiter_bytes |
|
|
async for raw_bytes in self.aiter_raw(): |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_models.py", line 1055, in aiter_raw |
|
|
async for raw_stream_bytes in self.stream: |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_client.py", line 176, in __aiter__ |
|
|
async for chunk in self._stream: |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_transports/default.py", line 270, in __aiter__ |
|
|
with map_httpcore_exceptions(): |
|
|
File "/usr/lib/python3.10/contextlib.py", line 153, in __exit__ |
|
|
self.gen.throw(typ, value, traceback) |
|
|
File "/home/samuel/.local/lib/python3.10/site-packages/httpx/_transports/default.py", line 118, in map_httpcore_exceptions |
|
|
raise mapped_exc(message) from exc |
|
|
httpx.RemoteProtocolError: peer closed connection without sending complete message body (incomplete chunked read) |
|
|
|