main
py 34 lines 1.29 KB
Raw
1 # SPDX-License-Identifier: Apache-2.0
2 # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
4 import requests
5 from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
6 from opentelemetry.sdk.trace import TracerProvider
7 from opentelemetry.sdk.trace.export import BatchSpanProcessor, ConsoleSpanExporter
8 from opentelemetry.trace import SpanKind, set_tracer_provider
9 from opentelemetry.trace.propagation.tracecontext import TraceContextTextMapPropagator
10
11 trace_provider = TracerProvider()
12 set_tracer_provider(trace_provider)
13
14 trace_provider.add_span_processor(BatchSpanProcessor(OTLPSpanExporter()))
15 trace_provider.add_span_processor(BatchSpanProcessor(ConsoleSpanExporter()))
16
17 tracer = trace_provider.get_tracer("dummy-client")
18
19 url = "http://localhost:8000/v1/completions"
20 with tracer.start_as_current_span("client-span", kind=SpanKind.CLIENT) as span:
21 prompt = "San Francisco is a"
22 span.set_attribute("prompt", prompt)
23 headers = {}
24 TraceContextTextMapPropagator().inject(headers)
25 payload = {
26 "model": "facebook/opt-125m",
27 "prompt": prompt,
28 "max_tokens": 10,
29 "n": 3,
30 "use_beam_search": "true",
31 "temperature": 0.0,
32 # "stream": True,
33 }
34 response = requests.post(url, headers=headers, json=payload)