Update src/processor.py
Browse files- src/processor.py +11 -8
src/processor.py
CHANGED
@@ -6,7 +6,7 @@ import requests
|
|
6 |
import tempfile
|
7 |
import gradio as gr
|
8 |
|
9 |
-
def process_document(pdf_file, api_key, voice_choice, style_choice, chunk_size, temperature, max_tokens, progress=gr.Progress()):
|
10 |
try:
|
11 |
os.environ['OPENAI_API_KEY'] = api_key
|
12 |
|
@@ -19,12 +19,18 @@ def process_document(pdf_file, api_key, voice_choice, style_choice, chunk_size,
|
|
19 |
{
|
20 |
'document': pxt.Document,
|
21 |
'voice': pxt.String,
|
22 |
-
'style': pxt.String
|
|
|
23 |
}
|
24 |
)
|
25 |
|
26 |
progress(0.2, desc="Processing document...")
|
27 |
-
docs.insert([{
|
|
|
|
|
|
|
|
|
|
|
28 |
|
29 |
chunks = pxt.create_view(
|
30 |
'document_audio.chunks',
|
@@ -41,11 +47,7 @@ def process_document(pdf_file, api_key, voice_choice, style_choice, chunk_size,
|
|
41 |
messages=[
|
42 |
{
|
43 |
'role': 'system',
|
44 |
-
'content':
|
45 |
-
Structure:
|
46 |
-
1. Core concepts and points
|
47 |
-
2. Supporting details
|
48 |
-
3. Key takeaways"""
|
49 |
},
|
50 |
{'role': 'user', 'content': chunks.text}
|
51 |
],
|
@@ -53,6 +55,7 @@ def process_document(pdf_file, api_key, voice_choice, style_choice, chunk_size,
|
|
53 |
max_tokens=max_tokens,
|
54 |
temperature=temperature
|
55 |
)
|
|
|
56 |
chunks['content'] = chunks.content_response['choices'][0]['message']['content']
|
57 |
|
58 |
progress(0.6, desc="Script generation...")
|
|
|
6 |
import tempfile
|
7 |
import gradio as gr
|
8 |
|
9 |
+
def process_document(pdf_file, api_key, voice_choice, style_choice, chunk_size, temperature, max_tokens, system_prompt, progress=gr.Progress()):
|
10 |
try:
|
11 |
os.environ['OPENAI_API_KEY'] = api_key
|
12 |
|
|
|
19 |
{
|
20 |
'document': pxt.Document,
|
21 |
'voice': pxt.String,
|
22 |
+
'style': pxt.String,
|
23 |
+
'mode_prompt': pxt.String
|
24 |
}
|
25 |
)
|
26 |
|
27 |
progress(0.2, desc="Processing document...")
|
28 |
+
docs.insert([{
|
29 |
+
'document': pdf_file.name,
|
30 |
+
'voice': voice_choice,
|
31 |
+
'style': style_choice,
|
32 |
+
'mode_prompt': system_prompt
|
33 |
+
}])
|
34 |
|
35 |
chunks = pxt.create_view(
|
36 |
'document_audio.chunks',
|
|
|
47 |
messages=[
|
48 |
{
|
49 |
'role': 'system',
|
50 |
+
'content': docs.mode_prompt # Use the mode-specific prompt
|
|
|
|
|
|
|
|
|
51 |
},
|
52 |
{'role': 'user', 'content': chunks.text}
|
53 |
],
|
|
|
55 |
max_tokens=max_tokens,
|
56 |
temperature=temperature
|
57 |
)
|
58 |
+
|
59 |
chunks['content'] = chunks.content_response['choices'][0]['message']['content']
|
60 |
|
61 |
progress(0.6, desc="Script generation...")
|