Skip to content

Commit 6fd4267

Browse files
committed
update example
1 parent 5d2bc3e commit 6fd4267

File tree

1 file changed

+11
-50
lines changed

1 file changed

+11
-50
lines changed

examples/speech_summarized.py

Lines changed: 11 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,30 @@
11
from slashml import SpeechToText, TextSummarization
2-
import time
3-
4-
5-
def speech_to_text(uploaded_audio_url, service_provider, api_key):
6-
# Initialize model
7-
model = SpeechToText(api_key=api_key)
8-
9-
# Submit transcription request
10-
job = model.transcribe(uploaded_audio_url, service_provider=service_provider)
11-
12-
assert job.status != "ERROR", f"{job}"
13-
print(f"Job ID: {job.id}")
14-
15-
# check job status
16-
response = model.status(job.id, service_provider=service_provider)
17-
18-
while response.status == "IN_PROGRESS":
19-
time.sleep(30)
20-
response = model.status(job.id, service_provider=service_provider)
21-
print(f"Response = {response}. Retrying in 30 seconds")
22-
23-
return response
24-
25-
26-
def summarize(text, service_provider, api_key):
27-
# Initialize model
28-
model = TextSummarization(api_key=api_key)
29-
30-
# Submit request
31-
job = model.summarize(text=text, service_provider=service_provider)
32-
33-
assert job.status != "ERROR", f"{job}"
34-
print(f"Job ID: {job.id}")
35-
36-
# Check job status
37-
response = model.status(job.id, service_provider=service_provider)
38-
39-
# Keep checking job status until the task is complete
40-
while response.status == "PENDING":
41-
print(f"Response = {response}. Retrying in 30 seconds")
42-
time.sleep(30)
43-
response = model.status(job.id, service_provider=service_provider)
44-
45-
return response
46-
472

483
# Replace `API_KEY` with your SlasML API token. This example still runs without
494
# the API token but usage will be limited
50-
API_KEY = "b503d137d229fdd4085f59e9ea06ac95d2706182"
5+
API_KEY = "a7011983a0f3d64ee113317b1e36f8e5bf56c14a"
516

52-
service_provider_speech_to_text = SpeechToText.ServiceProvider.AWS
7+
service_provider_speech_to_text = SpeechToText.ServiceProvider.WHISPER
538
service_provider_summarize = TextSummarization.ServiceProvider.OPENAI
549

5510
# 10 minute audio file already uploaded
5611
uploaded_url = (
5712
"https://slashml.s3.ca-central-1.amazonaws.com/fda70f6a-6057-4541-adf1-2cf4f4182929"
5813
)
5914

15+
transcribe = SpeechToText(api_key=API_KEY)
16+
summarize = TextSummarization(api_key=API_KEY)
6017

61-
response_speech_to_text = speech_to_text(uploaded_url, service_provider_speech_to_text, API_KEY)
18+
response = transcribe.execute(
19+
upload_url=uploaded_url, service_provider=service_provider_speech_to_text
20+
)
6221

63-
transcribed_text = response_speech_to_text.transcription_data.transcription
22+
print('starting pipeline, the first response might take 10 secs')
23+
transcribed_text = response.transcription_data.transcription
6424
print (f"Transcribed Text = {transcribed_text}")
6525

66-
response_summarize = summarize(transcribed_text, service_provider_summarize, API_KEY)
26+
response_summarize = summarize.execute(transcribed_text, service_provider_summarize)
27+
6728
summary = response_summarize.summarization_data
6829

6930
print (f"Summarized Text = {summary}")

0 commit comments

Comments
 (0)