Update app.py
Browse filesuse hunyuan-pro
app.py
CHANGED
|
@@ -24,8 +24,14 @@ clean_directory()
|
|
| 24 |
|
| 25 |
anonymizer = FHEAnonymizer()
|
| 26 |
key=os.environ.get("openaikey")
|
| 27 |
-
|
| 28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
|
| 30 |
# Start the Uvicorn server hosting the FastAPI app
|
| 31 |
subprocess.Popen(["uvicorn", "server:app"], cwd=CURRENT_DIR)
|
|
@@ -446,7 +452,7 @@ def query_chatgpt_fn(anonymized_query, anonymized_document):
|
|
| 446 |
print(f'Prompt of CHATGPT:\n{query}')
|
| 447 |
|
| 448 |
completion = client.chat.completions.create(
|
| 449 |
-
model="gpt-4o-mini-2024-07-18
|
| 450 |
messages=[
|
| 451 |
{"role": "system", "content": context_prompt},
|
| 452 |
{"role": "user", "content": query},
|
|
@@ -505,7 +511,7 @@ with demo:
|
|
| 505 |
通常的匿名化会删除隐私数据或者用没有意义的字符代替,这就使得数据失去了价值。而加密匿名化使用完全同态加密 (FHE) 对文档中的个人身份信息 (PII) 进行加密实现匿名化,从而可以对加密后的数据执行其他计算。</p>
|
| 506 |
|
| 507 |
<p align="center" style="font-size: 16px;">
|
| 508 |
-
|
| 509 |
"""
|
| 510 |
)
|
| 511 |
|
|
@@ -526,7 +532,7 @@ with demo:
|
|
| 526 |
"""
|
| 527 |
)
|
| 528 |
|
| 529 |
-
gen_key_btn = gr.Button("
|
| 530 |
|
| 531 |
gen_key_btn.click(
|
| 532 |
key_gen_fn,
|
|
@@ -650,20 +656,20 @@ with demo:
|
|
| 650 |
outputs=[anonymized_doc_output, anonymized_query_output, identified_words_output_df],
|
| 651 |
)
|
| 652 |
|
| 653 |
-
########################## ChatGpt Part ##########################
|
| 654 |
|
| 655 |
gr.Markdown("<hr />")
|
| 656 |
-
gr.Markdown("## 第4步:
|
| 657 |
gr.Markdown(
|
| 658 |
-
"""使用FHE
|
| 659 |
)
|
| 660 |
|
| 661 |
-
chatgpt_button = gr.Button("
|
| 662 |
|
| 663 |
with gr.Row():
|
| 664 |
-
chatgpt_response_anonymized = gr.Textbox(label="
|
| 665 |
chatgpt_response_deanonymized = gr.Textbox(
|
| 666 |
-
label="
|
| 667 |
)
|
| 668 |
|
| 669 |
chatgpt_button.click(
|
|
@@ -673,7 +679,7 @@ with demo:
|
|
| 673 |
)
|
| 674 |
|
| 675 |
gr.Markdown(
|
| 676 |
-
"""**请注意**:
|
| 677 |
"""
|
| 678 |
)
|
| 679 |
# Launch the app
|
|
|
|
| 24 |
|
| 25 |
anonymizer = FHEAnonymizer()
|
| 26 |
key=os.environ.get("openaikey")
|
| 27 |
+
|
| 28 |
+
# client = OpenAI(api_key=key)
|
| 29 |
+
# print(key)
|
| 30 |
+
|
| 31 |
+
tencent_key = "sk-f9iu8EOPLFbf6m3aMW1K7QoPy2XeB3cKSwrP44CqkRtzMFfM"
|
| 32 |
+
client = OpenAI(api_key=tencent_key, base_url="https://api.hunyuan.cloud.tencent.com/v1")
|
| 33 |
+
print(tencent_key)
|
| 34 |
+
|
| 35 |
|
| 36 |
# Start the Uvicorn server hosting the FastAPI app
|
| 37 |
subprocess.Popen(["uvicorn", "server:app"], cwd=CURRENT_DIR)
|
|
|
|
| 452 |
print(f'Prompt of CHATGPT:\n{query}')
|
| 453 |
|
| 454 |
completion = client.chat.completions.create(
|
| 455 |
+
model="hunyuan-pro", # Replace with "gpt-4o-mini-2024-07-18, gpt-4" if available
|
| 456 |
messages=[
|
| 457 |
{"role": "system", "content": context_prompt},
|
| 458 |
{"role": "user", "content": query},
|
|
|
|
| 511 |
通常的匿名化会删除隐私数据或者用没有意义的字符代替,这就使得数据失去了价值。而加密匿名化使用完全同态加密 (FHE) 对文档中的个人身份信息 (PII) 进行加密实现匿名化,从而可以对加密后的数据执行其他计算。</p>
|
| 512 |
|
| 513 |
<p align="center" style="font-size: 16px;">
|
| 514 |
+
在本示例中,我们展示了如何利用加密匿名化以保护隐私的方式使用腾讯混元大模型/ChatGPT等LLM服务。</p>
|
| 515 |
"""
|
| 516 |
)
|
| 517 |
|
|
|
|
| 532 |
"""
|
| 533 |
)
|
| 534 |
|
| 535 |
+
gen_key_btn = gr.Button("生成私钥和计算密钥")
|
| 536 |
|
| 537 |
gen_key_btn.click(
|
| 538 |
key_gen_fn,
|
|
|
|
| 656 |
outputs=[anonymized_doc_output, anonymized_query_output, identified_words_output_df],
|
| 657 |
)
|
| 658 |
|
| 659 |
+
########################## 腾讯混元大模型/ChatGpt Part ##########################
|
| 660 |
|
| 661 |
gr.Markdown("<hr />")
|
| 662 |
+
gr.Markdown("## 第4步: 发送匿名化后的问题给腾讯混元大模型")
|
| 663 |
gr.Markdown(
|
| 664 |
+
"""使用FHE安全地匿名化查询问题后,您可以将其转发给腾讯混元大模型而不必担心信息泄露。"""
|
| 665 |
)
|
| 666 |
|
| 667 |
+
chatgpt_button = gr.Button("查询腾讯混元大模型")
|
| 668 |
|
| 669 |
with gr.Row():
|
| 670 |
+
chatgpt_response_anonymized = gr.Textbox(label="腾讯混元大模型的匿名化响应:", lines=5)
|
| 671 |
chatgpt_response_deanonymized = gr.Textbox(
|
| 672 |
+
label="腾讯混元大模型的去匿名化响应", lines=5
|
| 673 |
)
|
| 674 |
|
| 675 |
chatgpt_button.click(
|
|
|
|
| 679 |
)
|
| 680 |
|
| 681 |
gr.Markdown(
|
| 682 |
+
"""**请注意**: 由于此应用仅用于演示目的,匿名化算法可能会遗漏一些私人信息。请在将查询发送到腾讯混元大模型之前对其进行复核。
|
| 683 |
"""
|
| 684 |
)
|
| 685 |
# Launch the app
|