(request: Request)
| 237 | @app.get("/tokens") |
| 238 | @app.post("/tokens") |
| 239 | async def tokens(request: Request): |
| 240 | try: |
| 241 | request_dict = await request.json() |
| 242 | prompt = request_dict.pop("text") |
| 243 | sample_params_dict = request_dict.pop("parameters", {}) |
| 244 | |
| 245 | sampling_params = SamplingParams() |
| 246 | sampling_params.init(tokenizer=g_objs.httpserver_manager.tokenizer, **sample_params_dict) |
| 247 | sampling_params.verify() |
| 248 | |
| 249 | multimodal_params_dict = request_dict.get("multimodal_params", {}) |
| 250 | multimodal_params = MultimodalParams(**multimodal_params_dict) |
| 251 | await multimodal_params.verify_and_preload(request) |
| 252 | return JSONResponse( |
| 253 | { |
| 254 | "ntokens": g_objs.httpserver_manager.tokens( |
| 255 | prompt, multimodal_params, sampling_params, sample_params_dict |
| 256 | ) |
| 257 | }, |
| 258 | status_code=200, |
| 259 | ) |
| 260 | except Exception as e: |
| 261 | return create_error_response(HTTPStatus.EXPECTATION_FAILED, f"error: {str(e)}") |
| 262 | |
| 263 | |
| 264 | @app.get("/metrics") |
nothing calls this directly
no test coverage detected