成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶 原創(chuàng)

發(fā)布于 2025-6-12 08:21
瀏覽
0收藏

如今AI雖已全面普及,但多數(shù)職場人士仍難以統(tǒng)一運(yùn)用各類互不相關(guān)的工具:一會需要使用聊天機(jī)器人、一會需要將文本復(fù)制到摘要器內(nèi),再加上會議轉(zhuǎn)錄和翻譯,將本應(yīng)順暢的工作流程拆分得零散瑣碎。

所以問題來了:為什么不能把各項(xiàng)AI功能集中起來?

為此我決定構(gòu)建單一Web門戶,供用戶隨時上傳文檔、提問、獲取摘要、轉(zhuǎn)錄會議內(nèi)容、翻譯文件,甚至從PDF中提取表格等。其功能不求花哨、只講實(shí)用,旨在解決我們每天面臨的實(shí)際問題。

下面我們將共同了解如何將整個項(xiàng)目拼湊起來,介紹技術(shù)選型理由,以及如何將其運(yùn)行起來。不必?fù)?dān)心,所有內(nèi)容均為開源,且不涉及任何AI“黑話”。

這個門戶能干啥??

  • 與數(shù)據(jù)對話:上傳文檔,用自然語言提問,直接獲取答案(不只靠關(guān)鍵詞匹配)。?
  • 摘要:上傳長報(bào)告或政策文件,快速獲取簡短清晰的摘要——若有需要,還可以自定義摘要方式。?
  • 轉(zhuǎn)錄:上傳會議錄音,快速獲得書面轉(zhuǎn)錄。?
  • 翻譯:將文檔轉(zhuǎn)換為其他語言,保留原始格式。?
  • 提取:從PDF中抓取表格和關(guān)鍵數(shù)據(jù),并下載為JSON或Excel格式。?

不必在各類應(yīng)用間往來切換,只需上傳文件、選擇功能,即可獲得所需內(nèi)容。

各項(xiàng)功能如何協(xié)同起效??

下面簡單來看項(xiàng)目的整體架構(gòu):

  • 前端:React?
  • 后端:FastAPI(Python)?
  • 大模型和嵌入:Azure OpenAI?
  • 向量數(shù)據(jù)庫:Pinecone?
  • 音頻轉(zhuǎn)錄:Whisper(本地運(yùn)行)?
  • 翻譯:Azure Translator?
  • 文檔提取:Azure Document Intelligence?
  • 存儲:本地或Azure Blob存儲(演示中使用本地存儲)?
  • 認(rèn)證:(生產(chǎn)環(huán)境可添加 Azure AD/OAuth)?

各組件間的連接方式:

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶-AI.x社區(qū)

功能演示(附帶圖表及代碼)?

與數(shù)據(jù)對話?

無需閱讀全文,即可通過提問直接從PDF文件或者報(bào)告中獲取答案,是不是很讓人心動?這就是“與數(shù)據(jù)對話”功能。大家上傳文檔、用自然語言提出問題,大模型就能直接從文件內(nèi)容中提取答案。這將為所有人節(jié)約時間——包括法律、財(cái)務(wù)、合規(guī)部門,乃至任何需要處理冗長文件的工作者。

如何實(shí)現(xiàn)?

此門戶會拆分并嵌入文檔,將其存儲在Pinecone當(dāng)中,并使用Azure OpenAI回答用戶輸入的任何問題。

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶-AI.x社區(qū)

后端:用于上傳文檔的FastAPI端點(diǎn)?

# Python backend example
@app.post("/upload/")
async def upload_file(file: UploadFile = File(...)):
 contents = await file.read()
 text = contents.decode("utf-8", errors="ignore")
 upsert_document(text)
 return {"status": "uploaded"}

后端:用于聊天的FastAPI端點(diǎn)?

# Python backend for chat
@app.post("/chat/")
async def chat(query: str = Form(...)):
 matches = query_pinecone(query)
 context = " ".join([m['text'] for m in matches])
 answer = get_answer(query, context)
 return {"answer": answer}

其余后端代碼請參見?GitHub??。?

摘要?

坦白講,大多數(shù)商業(yè)文檔都搞得太冗長。摘要功能將幫助我們從這些大文件中獲取簡短、清晰的摘要。我們甚至可以添加自定義提示詞,例如“總結(jié)合規(guī)性關(guān)鍵風(fēng)險(xiǎn)”或“提供主要行動指標(biāo)”。

如何實(shí)現(xiàn)?

在上傳文檔之后,后端將內(nèi)容及用戶的提示詞發(fā)送至Azure OpenAI,而后返回摘要內(nèi)容——再無需通讀全文。

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶-AI.x社區(qū)

后端:FastAPI摘要端點(diǎn)?

# Summarization endpoint
@app.post("/summarize/")
async def summarize(file: UploadFile = File(...), prompt: str = Form("Summarize this document:")):
 contents = await file.read()
 text = contents.decode("utf-8", errors="ignore")
 summary = summarize_text(text, prompt)
 return JSONResponse(content={"summary": summary})

詳見??React SummarizeForm組件??。?

音頻轉(zhuǎn)錄?

大家肯定都處理過會議或者電話錄音……再聽一遍真的讓人崩潰。現(xiàn)在有了這項(xiàng)功能,只需上傳音頻或者視頻文件,即可快速獲取書面記錄。

如何實(shí)現(xiàn)?

音頻上傳完成后,后端會使用Whisper轉(zhuǎn)錄所有內(nèi)容,而后將全文顯示在瀏覽器內(nèi)。

后端:FastAPI音頻轉(zhuǎn)錄端點(diǎn)?

# Audio transcription endpoint
@app.post("/transcribe/")
async def transcribe(file: UploadFile = File(...)):
 audio_bytes = await file.read()
 transcript = transcribe_audio_file(audio_bytes, file.filename)
 return JSONResponse(content={"transcript": transcript})

??TranscribeForm.js??

語言翻譯?

全球團(tuán)隊(duì)往往需要跨語種協(xié)作,而文檔翻譯則速度極慢且耗費(fèi)大量人力。現(xiàn)在大家可以上傳任意文件、選定目標(biāo)語言并快速獲取翻譯版本——連格式都幾乎保持一致。

如何實(shí)現(xiàn)?

上傳文檔、選定語言,后端會調(diào)用Azure Translator進(jìn)行翻譯,并將結(jié)果展示給用戶。

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶-AI.x社區(qū)

后端:FastAPI翻譯端點(diǎn)?

# Translation endpoint
@app.post("/translate/")
async def translate(
 file: UploadFile = File(...),
 to_language: str = Form(...)
):
 contents = await file.read()
 text = contents.decode("utf-8", errors="ignore")
 translated = fake_translate(text, to_language)
 return JSONResponse(content={"translated": translated})

??TranslateForm.js??

文檔提取器?

從PDF和表單中提取表格和鍵值數(shù)據(jù)一直是最讓文員們抓狂的任務(wù)。不怕,現(xiàn)在可以交給AI搞定。

如何實(shí)現(xiàn)?

上傳PDF(或其他掃描文檔),選擇JSON或Excel格式,此門戶將使用Azure Document Intelligence提取表格及鍵值對。結(jié)果可供隨時下載。

簡易實(shí)用項(xiàng)目攻略:如何創(chuàng)建集文檔問答、摘要、轉(zhuǎn)錄、翻譯與提取于一身的AI門戶-AI.x社區(qū)

后端:FastAPI提取端點(diǎn)?

# Document extractor endpoint
@app.post("/extract/")
async def extract(
 file: UploadFile = File(...),
 output_format: str = Form("json")
):
 contents = await file.read()
 filename = file.filename

 if output_format == "excel":
 xls_path = extract_tables_and_kv(contents, filename, output_format="excel")
 return FileResponse(xls_path, media_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", filename="extracted_tables.xlsx")
 else:
 output = extract_tables_and_kv(contents, filename, output_format="json")
 return JSONResponse(content=output)

??ExtractForm.js??

如何運(yùn)行這套門戶?

開源代碼地址: ??github.com/sanjaybk7/AIPortal??

  • 克隆repo: git clone https://github.com/sanjaybk7/AIPortal.git
  • 后端:
    進(jìn)入 backend,設(shè)置Python、安裝依賴項(xiàng)并運(yùn)行FastAPI。?
  • 前端:
    進(jìn)入 frontend,安裝依賴項(xiàng)并運(yùn)行React。?
  • 打開瀏覽器:
    訪問 ??http://localhost:3000??? 并開始上傳。?

注意,這里需要使用Azure和Pinecone的API密鑰,相關(guān)設(shè)置方法已在repo說明中提供。

總結(jié)?

相信很多朋友跟我一樣,已經(jīng)厭倦了在不同AI工具間往來切換。通過這篇簡短的攻略,咱們成功把多款現(xiàn)代AI工具集中起來,感興趣的朋友不妨趕緊用起來!

原文標(biāo)題??How I Built an AI Portal for Document Q and A, Summarization, Transcription, Translation, and Extraction??,作者:Sanjay Krishnegowda

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請注明出處,否則將追究法律責(zé)任
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 亚洲精品在线播放 | av在线免费网 | 蜜桃视频在线观看www社区 | 亚洲精品视频在线观看免费 | 国产一区二区三区亚洲 | 日韩午夜影院 | 亚洲综合久久久 | 午夜激情国产 | 福利二区| 国产高清视频一区 | 99精品99 | 九九热在线观看视频 | 一区二区中文字幕 | 伊人网综合| 国产夜恋视频在线观看 | 本道综合精品 | 在线观看亚洲一区二区 | 国产一区二区三区免费观看视频 | 国产电影一区二区在线观看 | 亚洲a视频 | 国产精品久久免费观看 | 色视频网站在线观看 | 亚洲国产情侣 | 国产 日韩 欧美 制服 另类 | 久久爆操 | 午夜大片 | 久久久久久毛片免费观看 | 久久久99精品免费观看 | 男人的天堂在线视频 | 99精品久久久 | 国产精品99久久久久久久久 | 国产日韩中文字幕 | 黄a网站 | 天天拍天天操 | 亚洲精品视频观看 | 精品成人一区二区 | 91精品中文字幕一区二区三区 | 精品免费国产视频 | 在线看中文字幕 | a国产一区二区免费入口 | 国产精品免费观看视频 |