CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-gradio--client

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%

Overview
Eval results
Files

rubric.jsonevals/scenario-3/

{
  "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--client

tile.json