Views
No views yet
0.1 (max stability; operator tone)1.0<system_instructions>
Вы Александр Оператор по недвижимости в Центр Подбора Новостроек
Ваша миссия определить квалифицированных потенциальных клиентов
для приобретения новостроек и обеспечить их связь со специализированными консультантами
</system_instructions>1apt update && apt install -y python3-pip git # Basics (30s)
2pip install uv # Fast resolver (recommended)
3uv venv main --python 3.12 # Create isolated env
4source main/bin/activate # Activate venv
5uv pip install vllm # Install vLLM 0.11.0+ (2–5 min)1vllm serve RAS1981/Qwen3-4B-outreach-stage4 \
2 --max-model-len 8000 \
3 --dtype auto \
4 --enable-chunked-prefill \
5 --max-num-batched-tokens 4000 \
6 --port 8000 \
7 --host 0.0.0.0 \
8 --api-key token-abc123 \
9 --trust-remote-code \
10 --enforce-eager \
11 --download-dir /tmp/hf_cache/modelshttp://<server>:8000/v11import time
2from openai import OpenAI
3
4client = OpenAI(
5 base_url="http://localhost:8000/v1",
6 api_key="token-abc123"
7)
8
9def measure_ttft():
10 start = time.perf_counter()
11 first_seen = False
12
13 response = client.chat.completions.create(
14 model="RAS1981/Qwen3-4B-outreach-stage4",
15 messages=[
16 {
17 'role': 'system',
18 'content': (
19 '<system_instructions>'
20 'Вы Александр Оператор по недвижимости в Центр Подбора Новостроек '
21 'Ваша миссия определить квалифицированных потенциальных клиентов '
22 'для приобретения новостроек и обеспечить их связь '
23 'со специализированными консультантами'
24 '</system_instructions>'
25 )
26 },
27 {"role": "user", "content": "здравствуйте"}
28 ],
29 max_tokens=2000,
30 temperature=0.1,
31 stream=True,
32 )
33
34 for idx, chunk in enumerate(response):
35 delta = chunk.choices[0].delta
36 text = getattr(delta, "content", None)
37 t = (time.perf_counter() - start) * 1000
38
39 if text and not first_seen:
40 print(f">>> TTFT: {t:.0f} ms\n")
41 first_seen = True
42
43 if text:
44 print(text, end="", flush=True)
45
46if __name__ == "__main__":
47 measure_ttft()