譯者 | 布加迪
審校 | 重樓
現(xiàn)有的大模型無(wú)法解決我的問(wèn)題,于是我自己構(gòu)建了一個(gè)開(kāi)源工具,用于高效地自動(dòng)生成提案。
最近,我沒(méi)有像以前那樣頻繁地更新開(kāi)源文章,倒不是由于我停止寫(xiě)文章,而是由于開(kāi)源商業(yè)化方面的進(jìn)展很大,沒(méi)完沒(méi)了地起草提案這項(xiàng)任務(wù)消耗了我的太多時(shí)間。
作為一家本土的開(kāi)源商業(yè)公司,WhaleOps雇傭的大多是工程師。要求這些開(kāi)源貢獻(xiàn)者編寫(xiě)提案浪費(fèi)了他們的開(kāi)發(fā)時(shí)間,他們的提案并不總是符合質(zhì)量標(biāo)準(zhǔn)。與大公司的管理不同,身為初創(chuàng)公司的首席執(zhí)行官意味著擔(dān)任公司需要的任何角色。每次戰(zhàn)略會(huì)議結(jié)束后,我都是第一個(gè)卷起袖子、處理最緊急的任務(wù)。因此,我沒(méi)有時(shí)間寫(xiě)文章,因?yàn)橛邢薜臅r(shí)間主要用于創(chuàng)建遵循正式模板風(fēng)格的提案。尤其是最近,由于忙著競(jìng)標(biāo),我發(fā)現(xiàn)自己都忙暈了。
作為一名技術(shù)人員,我總是尋找工具來(lái)解決問(wèn)題。我自然想到了大模型,但它們不能完全理解我們產(chǎn)品的細(xì)微差別,而且經(jīng)常生成不可靠的輸出。此外,交付工作的是你,而不是模型。
于是,我決定使用Python和兼容的大模型(與ChatGPT兼容),開(kāi)發(fā)一個(gè)基于大模型的提案生成工具。這個(gè)工具可以自動(dòng)從你的產(chǎn)品文檔生成提案,將產(chǎn)品手冊(cè)分解為特征點(diǎn)?;谌藶閯?chuàng)建的這些特征點(diǎn)到需求的映射,它生成提案的Word版本和Excel偏差表。模型可以根據(jù)需要來(lái)精簡(jiǎn)或擴(kuò)展內(nèi)容,或者只是復(fù)制相關(guān)功能。
開(kāi)源提案工具的功能特性
這個(gè)工具的功能很簡(jiǎn)單,最具挑戰(zhàn)性的部分是Word格式(Word中的格式始終很痛苦)。我嘗試了幾種方法來(lái)確保它遵循Word模板中正確的標(biāo)題1、標(biāo)題2、標(biāo)題3、正文、表格和圖片格式。為了恪守開(kāi)源精神,我已將這個(gè)工具上傳到了我的個(gè)人GitHub上,采用Apache許可證,所以如果你需要它,可以隨意使用。該工具的功能如下:
- 將你的產(chǎn)品手冊(cè)分解為一組可重用的詳細(xì)文檔,減少在起草提案時(shí)重復(fù)引用源文檔的需要。你還可以定制特定的功能(默認(rèn)文件名為“Template.docx”)。
- 基于某個(gè)人填寫(xiě)的需求表,它自動(dòng)生成點(diǎn)對(duì)點(diǎn)響應(yīng)格式的提案,包括所有標(biāo)題和內(nèi)容,并使用正確的標(biāo)題1、標(biāo)題2和標(biāo)題3格式,并自動(dòng)組織正文文本、圖片和要點(diǎn)(默認(rèn)需求表是“requirements_table.xlsx”,生成的內(nèi)容在“proposal_content.docx”中)。
- 對(duì)于相應(yīng)功能部分中的任何產(chǎn)品需求,它會(huì)自動(dòng)將產(chǎn)品手冊(cè)內(nèi)容復(fù)制到點(diǎn)對(duì)點(diǎn)響應(yīng)部分,保留圖片、表格和要點(diǎn)。你還可以重寫(xiě)產(chǎn)品描述以適應(yīng)不同的提案需求。如果沒(méi)有匹配的功能,模型會(huì)自動(dòng)生成相關(guān)內(nèi)容(根據(jù)需要進(jìn)行檢查和修改)。
- 通過(guò)在“requirements_table.xlsx”中自動(dòng)填寫(xiě)響應(yīng),完成技術(shù)需求偏差表,響應(yīng)格式為“答案:完全支持,{基于項(xiàng)目需求的模型生成文本}”,并包含與提案對(duì)應(yīng)的節(jié)號(hào)。
使用該工具,你可以隨意快速修改和生成提案??梢栽谶@里得到它:https://github.com/William-GuoWei/ProposalLLM。
提案生成流程
首先運(yùn)行Extract_Word.py,將產(chǎn)品特征點(diǎn)生成為Word文檔,然后運(yùn)行Generate.py。如果缺少某個(gè)特征點(diǎn),可以在Excel文件中輸入“X”,模型會(huì)生成符合需求的內(nèi)容。然而,我強(qiáng)烈建議手工檢查。生成后,你會(huì)看到使用由內(nèi)容表、正文、圖片、表格和要點(diǎn)格式化的提案,所有這些都是自動(dòng)組織的。
整個(gè)提案是根據(jù)客戶的要求以順序格式構(gòu)建的,包括小標(biāo)題、內(nèi)容、圖片和點(diǎn)對(duì)點(diǎn)響應(yīng)。這承擔(dān)了所有的重復(fù)性工作。
自動(dòng)生成的偏差表包括所有內(nèi)容,無(wú)論內(nèi)容是否由模型生成以及相應(yīng)的節(jié)號(hào)。你只需要根據(jù)最終需求用“&”符號(hào)來(lái)完成偏差表,模型已為你寫(xiě)好了。
對(duì)我來(lái)說(shuō),這個(gè)工具將過(guò)去8小時(shí)的工作減少到30分鐘左右,甚至我們的業(yè)務(wù)團(tuán)隊(duì)也可以使用模板生成業(yè)務(wù)提案部分??偠灾?,這將我們?yōu)槠谝恢艿奶岚笗r(shí)間縮短至1-2天,所需的人力減少了80%。
如何使用它?
首先,從GitHub下載所有代碼到一個(gè)目錄中:Proposal Large Model(中文版),即https://github.com/William-GuoWei/ProposalLLM。
安裝Python環(huán)境和軟件包:pip install openpyxl, docx, openai, requests, docx, Python -docx。
申請(qǐng)ChatGPT或百度千帆大模型密鑰(我使用了ERNIE-Speed-8K,免費(fèi)),記錄token,放入到相關(guān)代碼段中。
將你的產(chǎn)品手冊(cè)復(fù)制到Template.docx。確保使用所提供的正文、標(biāo)題1、標(biāo)題2和標(biāo)題3樣式,其他格式可能會(huì)導(dǎo)致問(wèn)題。
運(yùn)行Extract_Word.py,從產(chǎn)品手冊(cè)生成特征點(diǎn)文檔(支持多達(dá)3個(gè)標(biāo)題級(jí)別)。如果列表格式出現(xiàn)異常,別擔(dān)心,最終格式會(huì)正確對(duì)齊。
填寫(xiě)B(tài)欄和C欄(自動(dòng)生成二級(jí)和三級(jí)標(biāo)題)以及G欄(相應(yīng)的產(chǎn)品手冊(cè)章節(jié))。如果缺少一章,請(qǐng)輸入“X”。注意,如果沒(méi)有相應(yīng)的章節(jié)或輸入“X”,模型會(huì)自動(dòng)生成內(nèi)容。
查看“proposal_content.docx”文檔,并保留想要開(kāi)始生成提案的那一章節(jié)。你可以修改正文和標(biāo)題1、2和3的樣式;只是別重命名樣式,否則可能會(huì)有錯(cuò)誤。
調(diào)整Generate.py中的參數(shù):
- API_KEY和SECRET_KEY:百度云大模型密鑰。
- MAX_WIDTH_CM:最大圖片寬度;大于此值的圖片將自動(dòng)調(diào)整大小。
- 用于生成內(nèi)容的提示已針對(duì)大數(shù)據(jù)場(chǎng)景進(jìn)行了定制,但你可以隨意修改它們。
- MoreSection=1將讀取列C以生成詳細(xì)的三級(jí)標(biāo)題(默認(rèn)為開(kāi)啟)。
- ReGenerateText=0將自動(dòng)為不同的提案需求重新生成文本內(nèi)容(默認(rèn)為關(guān)閉)。
- DDDAnswer=1在每個(gè)特征點(diǎn)的頂部生成點(diǎn)對(duì)點(diǎn)響應(yīng)內(nèi)容(默認(rèn)為開(kāi)啟)。
- key_flag =1將每個(gè)需求的重要性級(jí)別添加到提案標(biāo)題中(默認(rèn)為開(kāi)啟)。
- Last_heading_1 =2指定“proposal_content.docx”中技術(shù)解決方案的起始章節(jié)。
運(yùn)行Generate.py。
總結(jié)
使用此工具,你只需要根據(jù)提案需求檢查產(chǎn)品特征,并且大多數(shù)提案內(nèi)容是自動(dòng)生成的。業(yè)務(wù)提案部分也可以以類似的方式生成,因此創(chuàng)建1000頁(yè)長(zhǎng)的提案現(xiàn)在只需要幾分鐘。
原文標(biāo)題:I Built an Automatic Proposal Generation LLM and Open-Sourced It on GitHub,作者:William Guo