Merge pull request #1122 from pipecat-ai/mb/openai-org-id
Add organization and project level auth in OpenAILLMService
This commit is contained in:
@@ -41,6 +41,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
- Added `organization` and `project` level authentication to
|
||||||
|
`OpenAILLMService`.
|
||||||
|
|
||||||
- Improved the language checking logic in `ElevenLabsTTSService` and
|
- Improved the language checking logic in `ElevenLabsTTSService` and
|
||||||
`ElevenLabsHttpTTSService` to properly handle language codes based on model
|
`ElevenLabsHttpTTSService` to properly handle language codes based on model
|
||||||
compatibility, with appropriate warnings when language codes cannot be
|
compatibility, with appropriate warnings when language codes cannot be
|
||||||
|
|||||||
@@ -116,6 +116,8 @@ class BaseOpenAILLMService(LLMService):
|
|||||||
model: str,
|
model: str,
|
||||||
api_key=None,
|
api_key=None,
|
||||||
base_url=None,
|
base_url=None,
|
||||||
|
organization=None,
|
||||||
|
project=None,
|
||||||
params: InputParams = InputParams(),
|
params: InputParams = InputParams(),
|
||||||
**kwargs,
|
**kwargs,
|
||||||
):
|
):
|
||||||
@@ -131,12 +133,16 @@ class BaseOpenAILLMService(LLMService):
|
|||||||
"extra": params.extra if isinstance(params.extra, dict) else {},
|
"extra": params.extra if isinstance(params.extra, dict) else {},
|
||||||
}
|
}
|
||||||
self.set_model_name(model)
|
self.set_model_name(model)
|
||||||
self._client = self.create_client(api_key=api_key, base_url=base_url, **kwargs)
|
self._client = self.create_client(
|
||||||
|
api_key=api_key, base_url=base_url, organization=organization, project=project, **kwargs
|
||||||
|
)
|
||||||
|
|
||||||
def create_client(self, api_key=None, base_url=None, **kwargs):
|
def create_client(self, api_key=None, base_url=None, organization=None, project=None, **kwargs):
|
||||||
return AsyncOpenAI(
|
return AsyncOpenAI(
|
||||||
api_key=api_key,
|
api_key=api_key,
|
||||||
base_url=base_url,
|
base_url=base_url,
|
||||||
|
organization=organization,
|
||||||
|
project=project,
|
||||||
http_client=DefaultAsyncHttpxClient(
|
http_client=DefaultAsyncHttpxClient(
|
||||||
limits=httpx.Limits(
|
limits=httpx.Limits(
|
||||||
max_keepalive_connections=100, max_connections=1000, keepalive_expiry=None
|
max_keepalive_connections=100, max_connections=1000, keepalive_expiry=None
|
||||||
|
|||||||
Reference in New Issue
Block a user