mirror of
https://github.com/NicolasBohn/NexQuant.git
synced 2026-07-28 16:07:46 +00:00
97c1f7a021
* File structure for supporting litellm * more litellm support * feat: Add CachedAPIBackend class and dynamic API backend retrieval function * fix: update benchmark folder path and add default values for architecture and hyperparameters * feat: add LiteLLMAPIBackend and DeprecBackend ; changed structure of the project ; with bus * fix : deprec_backend * feat: Add LiteLLMAPIBackend class and related features; update configuration and test cases. * feat: Enhance LiteLLMAPIBackend with encoder support and dynamic argument handling;Enhance log Colors * lint * fix lint... * fix: Lint * fix:make auto-lint * fix:test oai * fix:redundant _abckend.py * fix: Optimize LiteLLMAPIBackend on token counting functiona, and clean up unused code;add test on this function * feat: Add LiteLLMSettings class and update model settings usage * fix: Update LiteLLMSettings environment variable prefix and model configurations * fix : gitignore * test: Consolidate and relocate test files for litellm backend and oai * fix : lint * fix: lint * auto lint * lint * LINT * lint * chore: remove deprecated backend configuration comments * refactor: Remove unused functions and imports from deprec.py and llm_utils.py * refactor: Move md5_hash function from deprec.py to llm_utils.py * chore: Remove extra newline and add missing import in deprec.py * lint * refactor: Move md5_hash function to utils module * lint * lint * lint --------- Co-authored-by: Young <afe.young@gmail.com> Co-authored-by: Yihua Chen <v-yihuachen@microsoft.com>
40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
import json
|
|
import unittest
|
|
|
|
from rdagent.oai.llm_utils import APIBackend
|
|
|
|
|
|
class TestChatCompletion(unittest.TestCase):
|
|
def test_chat_completion(self) -> None:
|
|
system_prompt = "You are a helpful assistant."
|
|
user_prompt = "What is your name?"
|
|
response = APIBackend().build_messages_and_create_chat_completion(
|
|
system_prompt=system_prompt,
|
|
user_prompt=user_prompt,
|
|
)
|
|
assert response is not None
|
|
assert isinstance(response, str)
|
|
|
|
def test_chat_completion_json_mode(self) -> None:
|
|
system_prompt = "You are a helpful assistant. answer in Json format."
|
|
user_prompt = "What is your name?"
|
|
response = APIBackend().build_messages_and_create_chat_completion(
|
|
system_prompt=system_prompt,
|
|
user_prompt=user_prompt,
|
|
json_mode=True,
|
|
)
|
|
assert response is not None
|
|
assert isinstance(response, str)
|
|
json.loads(response)
|
|
|
|
def test_build_messages_and_calculate_token(self) -> None:
|
|
system_prompt = "You are a helpful assistant."
|
|
user_prompt = "What is your name?"
|
|
token = APIBackend().build_messages_and_calculate_token(user_prompt=user_prompt, system_prompt=system_prompt)
|
|
assert token is not None
|
|
assert isinstance(token, int)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|