哪個網站做兼職太原關鍵詞排名優(yōu)化
如今,大模型層出不窮,這為自然語言處理、計算機視覺、語音識別和其他領域的人工智能任務帶來了重大的突破和進展。大模型通常指那些參數(shù)量龐大、層數(shù)深、擁有巨大的計算能力和數(shù)據訓練集的模型。
但不能不承認的是,普通人使用大模型還是有一定門檻的,首先大模型通常需要大量的計算資源才能進行訓練和推理。這包括高性能的圖形處理單元(GPU)或者專用的張量處理單元(TPU),以及大內存和高速存儲器。說白了,本地沒N卡,就斷了玩大模型的念想吧。
其次,大模型的性能往往受到模型調優(yōu)和微調的影響。這需要對模型的超參數(shù)進行調整和優(yōu)化,以適應特定任務或數(shù)據集。對大模型的調優(yōu)需要一定的經驗和專業(yè)知識,包括對深度學習原理和技術的理解。
那么,如果不具備相關專業(yè)知識,也沒有專業(yè)的設備,同時也想開發(fā)屬于自己的基于AI大模型的應用怎么辦?本次我們使用在線的云雀大模型來打造屬于自己的AI應用。
構建線上AI應用
首先訪問扣子應用的官網:
https://www.coze.cn/home
注冊成功之后,我們需要一個創(chuàng)意,也就是說我們到底想要做一個什么應用,這個應用的功能是什么,當然,關于創(chuàng)意AI是幫不了你的,需要自己想,比如筆者的代碼水平令人不敢恭維,平時在CodeReView時,經常被同事嘲笑,沒辦法,有的人就是沒有代碼潔癖,為了避免此種情況經常發(fā)生,想要打造一款AI機器人能夠在代碼提交之前幫忙審核代碼,檢查語法的錯誤并給出修改意見和性能層面優(yōu)化的方案。
此時點擊創(chuàng)建Bot:
如上圖所示,這里輸入應用的名稱和描述,至于應用圖標,可以讓AI生成一個。
工作流 WorkFlow
工作流指的是支持通過可視化的方式,對插件、大語言模型、代碼塊等功能進行組合,從而實現(xiàn)復雜、穩(wěn)定的業(yè)務流程編排。
我們的工作流非常簡單,第一步,用戶輸入代碼,第二步,大模型檢查代碼,第三步,大模型返回修改意見。
點擊創(chuàng)建工作流,輸入的參數(shù)變量為code,數(shù)據類型可以選擇四種,即字符串、整形、布爾和數(shù)字,這里代碼顯然選擇字符串。
接著接入大模型,引導詞這樣填寫:
你是一位經驗豐富的程序員,擅長Python,HTML,CSS,Java,Golang等語言,請檢查{{input}}這段代碼的語法,給出修改的建議,并且給出代碼性能優(yōu)化的多種修改方案。
通過引導詞來讓大模型針對輸入的代碼進行檢測。
最后返回大模型輸入的修改意見。
如圖所示:
隨后可以運行整個工作流進行測試,大模型返回:
{ "output": "可優(yōu)化項目與建議:\n- 建議使用 `try-except` 結構來捕獲所有類型的異常,然后進行統(tǒng)一處理。\n- 建議添加代碼注釋,增強代碼的可讀性。\n\n優(yōu)化后的代碼如下所示:\n```python\ndef make_tran():\n \"\"\"\n 該函數(shù)用于將 video.srt 文件中的英文翻譯成中文,并將翻譯結果寫入 two.srt 文件\n\n Returns:\n str: \"翻譯完畢\",表示翻譯過程已完成\n \"\"\"\n # 從預訓練模型中加載 tokenizer 和 model\n tokenizer = AutoTokenizer.from_pretrained(\"Helsinki-NLP/opus-mt-en-zh\")\n model = AutoModelForSeq2SeqLM.from_pretrained(\"Helsinki-NLP/opus-mt-en-zh\")\n # 打開 video.srt 文件并讀取其中的內容\n with open(\"./video.srt\", 'r', encoding=\"utf-8\") as file:\n gweight_data = file.read()\n # 將讀取到的內容按換行符分割成多個段落,并存儲在 result 列表中\(zhòng)n result = gweight_data.split(\"\\n\\n\")\n # 如果 two.srt 文件存在,則將其刪除\n if os.path.exists(\"./two.srt\"):\n os.remove(\"./two.srt\")\n # 遍歷 result 列表中的每個段落\n for res in result:\n # 將每個段落按換行符分割成多個句子,并存儲在 line_srt 列表中\(zhòng)n line_srt = res.split(\"\\n\")\n # 嘗試對每個句子進行翻譯\n try:\n # 使用 tokenizer 對句子進行預處理,以便模型可以處理它們\n tokenized_text = tokenizer.prepare_seq2seq_batch([line_srt[2]], return_tensors='pt')\n # 使用模型進行翻譯\n translation = model.generate(**tokenized_text)\n # 使用 tokenizer 將翻譯結果解碼為文本\n translated_text = tokenizer.batch_decode(translation, skip_special_tokens=False)[0]\n # 移除翻譯結果中的填充字符和結束符號,并去除首尾的空格\n translated_text = translated_text.replace(\"<pad>\", \"\").replace(\"</s>\", \"\").strip()\n # 打印翻譯結果\n print(translated_text)\n # 將翻譯結果寫入 two.srt 文件\n with open(\"./two.srt\", \"a\", encoding=\"utf-8\") as f:\n f.write(f\"{line_srt[0]}\\n{line_srt[1]}\\n{line_srt[2]}\\n{translated_text}\\n\\n\")\n # 如果在翻譯過程中發(fā)生任何異常,則打印異常信息,并跳過當前句子\n except Exception as e:\n print(str(e))\n # 返回 \"翻譯完畢\",表示翻譯過程已完成\n return \"翻譯完畢\"\n```"
}
如此,就完成了一個代碼檢查和優(yōu)化的工作流,說白了,就是給用戶一個沒有token限制并且無限次使用的大模型,并且跳過prompt環(huán)節(jié),直接簡單粗暴返回垂直內容的解決方案。
發(fā)布應用
構建好應用之后,我們可以在其他平臺發(fā)布,讓更多人使用該應用,這里以飛書為例子,飛書是一站式協(xié)同辦公平臺,為企業(yè)提供各種數(shù)字化辦公解決方案,大部分公司都在使用。
隨后在公司群里就可以直接調用自己的應用了:
結語
盡管使用大模型可能具有一些挑戰(zhàn),但隨著技術的進步和資源的可用性,大模型的門檻正在逐漸降低。這為更多的普通人、無編程背景的愛好者提供了利用大模型來解決對于個人垂直領域相對復雜任務的機會。