12 Commits

Author SHA1 Message Date
Tiago Ribeiro
792502be9a Merged in develop (pull request #59)
Fix speaking self._conf["slides"]["avatar"] giving 'list indices must be integers or slices, not str'
2025-03-05 15:26:50 +00:00
Cristiano Ferreira
9f9d5608dc Fix speaking self._conf["slides"]["avatar"] giving 'list indices must be integers or slices, not str' 2025-03-05 13:44:53 +00:00
Tiago Ribeiro
7212150df6 Merged in develop (pull request #58)
Fix method name
2025-03-04 23:02:38 +00:00
Cristiano Ferreira
b097345c08 Fix method name 2025-03-04 22:38:41 +00:00
Tiago Ribeiro
8144fa49ad Merged in develop (pull request #57)
Develop
2025-03-04 18:30:31 +00:00
Cristiano Ferreira
0c28dd6aee Merged in switch-to-elai (pull request #56)
Switch speaking to use ELAI

Approved-by: Tiago Ribeiro
2025-03-04 16:59:17 +00:00
Cristiano Ferreira
6c156ea876 Switch speaking to use ELAI 2025-03-04 13:32:35 +00:00
carlos.mesquita
7ceade5d40 Merged in release/async (pull request #55)
ENCOA-318 - logger was being used in load_indices_and_metadata before being instantiated

Approved-by: Tiago Ribeiro
2025-03-04 12:23:53 +00:00
Tiago Ribeiro
39b5d48e67 Merged in develop (pull request #54)
Develop
2025-01-13 22:43:20 +00:00
Tiago Ribeiro
26ad153f7c Merged in develop (pull request #51)
Develop
2025-01-06 21:33:05 +00:00
Tiago Ribeiro
7d04b144c4 Merge branch 'develop' 2024-12-23 16:39:03 +00:00
carlos.mesquita
111108556b Merged in feature/training-content (pull request #30)
Pydantic was causing validation errors when passportID was an int

Approved-by: Tiago Ribeiro
2024-09-08 20:49:13 +00:00
2 changed files with 17 additions and 8 deletions

View File

@@ -51,13 +51,22 @@ class DependencyInjector:
with open('ielts_be/services/impl/third_parties/elai/avatars.json', 'r') as file:
elai_avatars = json.load(file)
with open('ielts_be/services/impl/third_parties/elai/elai_conf.json', 'r') as file:
elai_conf = json.load(file)
"""
with open('ielts_be/services/impl/third_parties/heygen/avatars.json', 'r') as file:
heygen_avatars = json.load(file)
with open('ielts_be/services/impl/third_parties/elai/avatars.json', 'r') as file:
elai_avatars = json.load(file)
with open('ielts_be/services/impl/third_parties/elai/conf.json', 'r') as file:
elai_conf = json.load(file)
self._container.vid_gen = providers.Factory(
Heygen, client=self._container.http_client, token=os.getenv("HEY_GEN_TOKEN"), avatars=heygen_avatars
ELAI, client=self._container.http_client,
token=os.getenv("ELAI_TOKEN"),
avatars=elai_avatars,
conf=elai_conf
)
self._container.ai_detector = providers.Factory(
GPTZero, client=self._container.http_client, gpt_zero_key=os.getenv("GPT_ZERO_API_KEY")

View File

@@ -35,14 +35,14 @@ class ELAI(IVideoGeneratorService):
voice_provider = self._avatars[avatar].get("voice_provider")
self._conf["slides"][0]["canvas"]["objects"][0]["src"] = avatar_url
self._conf["slides"]["avatar"] = {
self._conf["slides"][0]["avatar"] = {
"code": avatar_code,
"gender": avatar_gender,
"canvas": avatar_canvas
}
self._conf["slides"]["speech"] = text
self._conf["slides"]["voice"] = voice_id
self._conf["slides"]["voiceProvider"] = voice_provider
self._conf["slides"][0]["speech"] = text
self._conf["slides"][0]["voice"] = voice_id
self._conf["slides"][0]["voiceProvider"] = voice_provider
response = await self._http_client.post(self._ELAI_ENDPOINT, headers=self._POST_HEADER, json=self._conf)
@@ -60,7 +60,7 @@ class ELAI(IVideoGeneratorService):
else:
return Task(status=TaskStatus.ERROR)
async def pool_status(self, video_id: str) -> Task:
async def poll_status(self, video_id: str) -> Task:
response = await self._http_client.get(f'{self._ELAI_ENDPOINT}/{video_id}', headers=self._GET_HEADER)
response_data = response.json()