JavaScript and TypeScript client library for interacting with Gradio APIs, providing methods to connect to, submit predictions to, and manage connections with Gradio applications.
Overall
score
96%
{
"context": "This evaluation assesses how effectively the engineer uses the @gradio/client package to implement SSE streaming functionality, focusing on proper use of the Client class, submit() method for streaming, event handling, and stream lifecycle management.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Client Connection",
"description": "Uses Client.connect() static method to establish connection to the Gradio application with the provided URL",
"max_score": 15
},
{
"name": "Stream Submission",
"description": "Uses client.submit() method (not predict()) to create a streaming job that returns an async iterable",
"max_score": 20
},
{
"name": "Async Iteration",
"description": "Properly iterates over the streaming job using 'for await...of' pattern to receive events",
"max_score": 15
},
{
"name": "Event Type Handling",
"description": "Correctly accesses and checks the 'type' property of events to categorize them (data, status, log)",
"max_score": 15
},
{
"name": "Event Data Access",
"description": "Properly accesses event-specific properties (message.data, message.status, message.log) based on event type",
"max_score": 10
},
{
"name": "Protocol Detection",
"description": "Extracts protocol information from status messages by accessing message.status.protocol or similar properties",
"max_score": 10
},
{
"name": "Stream Cancellation",
"description": "Uses the cancel() method on the job object to stop streaming when needed",
"max_score": 10
},
{
"name": "Connection Cleanup",
"description": "Calls client.close() to properly clean up the connection when done or on error",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-gradio--clientevals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10