Spaces:
No application file
No application file
| import os | |
| import pytest | |
| from embedchain.config import BaseLlmConfig | |
| from embedchain.llm.together import TogetherLlm | |
| def together_llm_config(): | |
| os.environ["TOGETHER_API_KEY"] = "test_api_key" | |
| config = BaseLlmConfig(model="togethercomputer/RedPajama-INCITE-7B-Base", max_tokens=50, temperature=0.7, top_p=0.8) | |
| yield config | |
| os.environ.pop("TOGETHER_API_KEY") | |
| def test_init_raises_value_error_without_api_key(mocker): | |
| mocker.patch.dict(os.environ, clear=True) | |
| with pytest.raises(ValueError): | |
| TogetherLlm() | |
| def test_get_llm_model_answer_raises_value_error_for_system_prompt(together_llm_config): | |
| llm = TogetherLlm(together_llm_config) | |
| llm.config.system_prompt = "system_prompt" | |
| with pytest.raises(ValueError): | |
| llm.get_llm_model_answer("prompt") | |
| def test_get_llm_model_answer(together_llm_config, mocker): | |
| mocker.patch("embedchain.llm.together.TogetherLlm._get_answer", return_value="Test answer") | |
| llm = TogetherLlm(together_llm_config) | |
| answer = llm.get_llm_model_answer("Test query") | |
| assert answer == "Test answer" | |
| def test_get_answer_mocked_together(together_llm_config, mocker): | |
| mocked_together = mocker.patch("embedchain.llm.together.Together") | |
| mock_instance = mocked_together.return_value | |
| mock_instance.return_value = "Mocked answer" | |
| llm = TogetherLlm(together_llm_config) | |
| prompt = "Test query" | |
| answer = llm.get_llm_model_answer(prompt) | |
| assert answer == "Mocked answer" | |
| mocked_together.assert_called_once_with( | |
| together_api_key="test_api_key", | |
| model="togethercomputer/RedPajama-INCITE-7B-Base", | |
| max_tokens=50, | |
| temperature=0.7, | |
| top_p=0.8, | |
| ) | |
| mock_instance.assert_called_once_with(prompt) | |