1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import openai
- import pytest
- from ...utils import RemoteOpenAIServer
- MODEL_NAME = "facebook/bart-base"
- @pytest.fixture(scope="module")
- def server():
- args = [
- "--dtype",
- "bfloat16",
- "--enforce-eager",
- ]
- with RemoteOpenAIServer(MODEL_NAME, args) as remote_server:
- yield remote_server
- @pytest.fixture(scope="module")
- def client(server):
- return server.get_async_client()
- @pytest.mark.asyncio
- @pytest.mark.parametrize("model_name", [MODEL_NAME])
- async def test_single_completion(client: openai.AsyncOpenAI, model_name: str):
- completion = await client.completions.create(model=model_name,
- prompt="Hello, my name is",
- max_tokens=5,
- temperature=0.0)
- assert completion.id is not None
- assert completion.choices is not None and len(completion.choices) == 1
- choice = completion.choices[0]
- assert len(choice.text) >= 5
- assert choice.finish_reason == "length"
- assert completion.usage == openai.types.CompletionUsage(
- completion_tokens=5, prompt_tokens=2, total_tokens=7)
- # test using token IDs
- completion = await client.completions.create(
- model=model_name,
- prompt=[0, 0, 0, 0, 0],
- max_tokens=5,
- temperature=0.0,
- )
- assert len(completion.choices[0].text) >= 1
|