顯示具有 python 標籤的文章。 顯示所有文章
顯示具有 python 標籤的文章。 顯示所有文章

2025年8月27日 星期三

2024年7月9日 星期二

使用Ollama與Open WebUI在本地端部署Llama3大語言模型



文/恆逸資深講師 申建忠

Ollama是一個使用Go語言開發的本地端大語言模型框架,可以在本地端執行多種開放原始碼的大語言模型,如:Llama 3、Mistral、Gemma等。其中Meta Llama 3以15T語料進行訓練,模型效果號稱無限接近ChatGPT4。

本文介紹如何在本地端安裝Ollama與Open WebUI,並使用Ollama運行Meta Llama 3:8b模型。

首先至Ollama官網(https://ollama.com)下載對應版本的ollama執行檔,下載完成後直接點擊安裝即可。本文以Apple Macbook pro 2018為例。

2024年6月3日 星期一

近30年來,企業一直都以JavaScript、Python和Java為主,這三種程式語言是企業及開發人員的首選!




儘管雲端運算、行動開發和人工智慧取得了大躍進,但世界各地企業的日常業務仍然運行在20 世紀 90 年代首次亮相的三種程式語言上。在幾乎所有排名系統中,JavaScript、Python和Java都位於最受歡迎語言的前面。

在GitHub每年的Octoverse狀態報告中(https://github.blog/2023-11-08-the-state-of-open-source-and-ai/),這三個程式語言長期稱霸,自2014年以來一直佔據前四名的三個位置。這三個程式語言為什麼能夠在近30年的時間裡一直成為開發者的首選,目前也完全看不出來,其他語言有機會取而代之呢?

2023年4月21日 星期五

ChatGPT,一場正在發生的革命

 


文:何孟翰 精誠資訊/恆逸教育訓練中心資深講師


前言

由於身為恆逸教育訓練中心的講師,通常社群中常常就充斥著新知,例如之前的手機AppIoT、物聯網、人工智慧、RPA,但是最近的潮流,不管是筆者的任何一個同溫層都充斥著ChatGPT所帶來的影響,並且對於任何相關資訊的更新頻率,已經由以前的數個月、數周到一日可以有幾個重要的更新。

例如在本文撰寫時,ChatGPT增加了外掛的功能,可以連接mathematica的數學引擎,並且也可以把自定義的資料網頁指定給ChatGPT,就可以運用對話模型來進行自定義資料的查詢,可以想像有越來越多的應用,可以藉由這個語言處理機制達到更便利的應用。

 

GPT? 是肝的某種指數嗎?

GPTgenerative pre-trained transformer的縮寫,而ChatGPT就是OpenAI2022年發表的人工智慧對話機器人,在以往AI的應用似乎都還是需要比較專業的操作,而ChatGPT由於模型在自然語言處理的成熟度已經發展到讓人眼睛為之一亮的等級,雖然比起電影中的鋼鐵人的Jarvis還是略輸一點,但還是引起了大家的關注。

 

ChatGPT的應用

在這個AIGC(人工智慧生成式內容)當紅的時代,每天都會有新的應用與新的發想,然而筆者覺得如果想要掌握這些內容生成的趨勢與潮流,從API的開發與實際使用可以略知一二。

 

不管GPT這是什麼,都給我來一點

ChatGPT這一波來勢洶洶,除了功能強大,更重要的是使用者不需要付出很大的計算能力,就能使用這些預先處理(pre-trained)的模型,並且它的費用是可負擔的。文字模型的計算方式是以token做計算,token是文字的計算單位,以英文來說大概750個字是1,000token,每1,000token以目前gpt3.5來說價格是USD0.002,也就是NT$0.06,聽起來似乎還可以接受ChatGPT更提供了USD18的額度讓您試用,以筆者最近進行的教育訓練,撰寫一份7小時ChatGPT SDK開發,寫了大概五、六種呼叫方式,分別對PythonNode.JS呼叫原生restfulapi大概是USD2左右的花費(當然範例沒有太大,也沒有太多的錯誤嘗試)

因此建議要了解ChatGPT,不如自己先依照以下網址登入申請一個帳號並且取得一組API_KEY

 https://platform.openai.com/account/api-keys


1API申請的畫面


同時可以使用playground做一些基本的操作,帳號申請並且驗證後,可以使用如下的網址:https://platform.openai.com/playground

此時就可以進行文字完成的使用,例如可以詢問如何使用PythonAPI呼叫,可以輸入

要能夠學習PythonAPI呼叫, 可以建議進行的練習是:

就可以看到如下的結果,似乎這和筆者進行的公開班與企業內訓內容有高度的相似


如果想試用chat,可以登入如下網址:https://chat.openai.com/chat 

同樣的問題可以先問一次:



此時可以追加詢問開源專案的詳細內容:



重點是您可以發現這是有前後文(context)相關的回答,因此可以理解這個大模型其實是可以讓您詢問後,記住目前的本文context,再讓您更進一步的能夠依照本文(in-context)再進行更深入的討論的。

這種有前後文的語言模型可以運用在許多地方,舉例來說,在以往語音輸入通常是個容易出錯並且準確度也不高的,還記得30年前左右在486電腦上,我的雙親對IBMvia-voice花了數小時從sound blaster接上了名牌的mic,還是寫不滿一頁的A4,而現在藉著ChatGPT的語言模型,您可以找到任何一篇感興趣的TED,透過whisper的引擎(截至目前版本是whisper-1),就算不寫任何一行程式,也可以透過像是curlpostmanadvanced rest controller這種restful操作工具在幾秒內得到非常流利的聽寫稿,更重要的是一分鐘的聽寫價格是USD0.006,也就是說一小時的聽寫,大概在新台幣11元左右,再透過語言模型即可以轉到自己熟悉的語言了,是不是比起專業的翻譯服務來得又快又好又有彈性呢


別再chanting了,這完全是rocket science

雖然ChatGPT以目前的表現和發展速度確實能讓人眼睛為之一亮,但不知為何,在之前的機器學習、深度學習的潮流下,操作與使用這些技術是非常自然的,然而這次的生成式人工智慧,就出現了很多詠唱(chanting),或者咒語、咒術相關的描述。但這其實依然是科學,而且是基於之前機器學習、深度學習、強化學習,生成對抗網路與一系列軟體硬體半導體的進步之後自然而然的結果。因此不管工作或興趣是不是直接和ChatGPT相關,筆者建議大家都應該相當密集的關注ChatGPT的發展,因此在感嘆ChatGPT強大的功能之前,其實了解機器學習、深度學習、資料處理的相關知識,都會對理解ChatGPT的發展有幫助,同時由於目前ChatGPTAPI主要是支援PythonJavaScript,如果想要整合ChatGPT到自己的服務中,理解這兩種語言也會很有幫助喔!



學習推薦

PythonPython程式設計 

BDPyPython與資料處理實戰演練

PyKTPython與機器學習深度學習-使用KerasTensorFlow 

PYMLPython機器學習-使用 Scikit-Learn 

NojsNode.JS實務運用

 


2022年9月12日 星期一

【恆逸達人學習故事】劉紹揚:老店迷人之處在於職人精神傳承!從.NET、Python到ACP管理,18年來恆逸陪伴著我成長,也伴隨著我的記憶!

     

▍ 恆逸達人學習故事  

資訊技術不斷推陳出新,想讓IT職涯發展更順遂需要不斷的精進技能
但是各種不同的技術課程與學習資源,該如何選擇最適合自己的呢?

本專欄分享來自各行各業IT人在恆逸的學習故事
從初入社會的新鮮人、到專業IT工程師、一路到技術主管或管理職
在職涯的不同階段,仍持續回到恆逸不斷累積他們的技術能量
從他們的經驗分享中,體會他們走過的職涯軌跡、及技術轉變上的心路歷程
看他們如何一步步規劃IT進修藍圖,為職涯做好準備!

2022年8月17日 星期三

【恆逸達人學習故事】林宜賢:從系統管理工作轉職程式設計師,到順利轉型大數據資料分析,任何工作上需要補足的新技能,全都倚賴恆逸來強化!

  

▍ 恆逸達人學習故事  

資訊技術不斷推陳出新,想讓IT職涯發展更順遂需要不斷的精進技能
但是各種不同的技術課程與學習資源,該如何選擇最適合自己的呢?

本專欄分享來自各行各業IT人在恆逸的學習故事
從初入社會的新鮮人、到專業IT工程師、一路到技術主管或管理職
在職涯的不同階段,仍持續回到恆逸不斷累積他們的技術能量
從他們的經驗分享中,體會他們走過的職涯軌跡、及技術轉變上的心路歷程
看他們如何一步步規劃IT進修藍圖,為職涯做好準備!

2021年12月22日 星期三

網路維運工程師的救星來了!最完整的自動化網路技術培訓指南

「如今,成功的網路工程師善於將新技術與傳統技術相結合,並消除網路與軟體開發之間的隔閡。這要求既具備開發與維運思維,也要對技術如何與業務目標結合有更好的理解。」

                                                                                                   — 思科傑出工程師Joe Clarke

 

軟體定義網路:面對日益增加的數位化需求,傳統的網路營運模式已不足以支援所需的業務服務。

目前,網路技術的許多重大進展正在凝聚,形成新一代網路模式的基礎。特別是自動化、人工智能、多雲端網路、無線和網路安全這五大技術領域的進步可望在數十年內興起最大的網路轉型浪潮。這些技術將支援市場對擴大規模、提高敏捷性和安全性的需求,由此實現如我們所知道的那般改變世界的新興趨勢。

2020年8月4日 星期二

語言開發新霸主Python,資料科學領域最重要的程式語言


根據TIOBE近20年來的程式語言趨勢調查,Python自2018年9月超過C++之後,還一口氣拿過2007、2010、2018年的年度程式語言冠軍。

不只開發者偏愛,Python也是許多開發專案、軟體常用的技術。在全球最大開源專案平臺GitHub上,去年年度報告統計Python首次超過Java,成為GitHub上第二流行的語言,僅次於JavaScript,這意味著使用Python的開發專案數量,是全球第二多。

2019年12月6日 星期五

【資料分析應用篇】無所不在的Python於Fintech與資料科學的應用

文/何孟翰 恆逸教育訓練中心資深講師

Python是一個跨平台的語言,並且有著高效能,好撰寫,開放源始碼與擁有廣大的社群支持等等的特性。在以往的client/server端程式中早就是非常成熟的Python,在近年來的物聯網和大數據,機器學習和深層學習(deep learning)中,一個愈來愈熱的語言即是Python,但其實Python給我們的影響遠遠大於此,其它像是程式交易(algorithm trading)與一些金融資料的分析,Python也是佔有一席之地。

                                                                                Img source: yen.io

舉例來說,像2011年在美國Boston就有一個新的公司叫作Quantopian,就是一個能夠讓你使用Python做程式交易的一個網站https://www.quantopian.com/


在這個網站上,你可以取得以分鐘為精準度的美股資料,並且使用Python撰寫演算法,並且進行過去資料的模擬,開發並且進行演算法的操作之後,再進行實際交易的輔助。

而在Quantopian的背後有一個以時序交易為基礎的zipline(http://www.zipline.io/)


zipline是一個Python的演算法交易library,同時也可以藉著它的指令列,取得以pandas的data frame為基礎的歷史資料。同時,zipline提供了明確的api,讓你可以藉著一個initialize()的初始化函數決定交易的一些變數狀態,例如要取得的股票或其它資產的代號,或者是其它的必要資訊,之後即可以在handle_data()的函數中依照預期的交易邏輯進行股票或其它資產的買賣了。當然,既然是程式交易,對於移動平均,或者一些常用的財務上的函數,在zipline中也進行了許多實作。

而zipline的基礎,是搭載於Python一個非常穩固的套件scipy上(https://www.scipy.org/),scipy唸作「sigh拍」,它就是一個Python的科學運算的套件,裡面有非常多重要的專案像是:
◆  Numpy
Python的數值運算套件,可以把Python的List轉變成數學上的矩陣進行一些複雜的數值分析與運算。

  Scipy
提供更多科學計算的函式庫,也是使用Python的機器學習的基礎,Python機器學習的套件在http://scikit-learn.org/, 提供了很多分群,分類,回歸等等的演算法可以使用。

  matplotlib
是一個Python的繪圖函式庫,它提供了強大的繪圖功能,讓Python能夠如商用軟體matlab般的進行資料視覺化的動作。

  ipython
是一個強化的互動介面,能夠讓我們一步一步的執行Python的資料分析與轉換。

  jupyter notebook
ipython有一個web的介面叫作ipython notebook,而這個介面後來稱為jupyter,這個介面可以將程式碼,繪圖的結果與文件放在同樣的介面,同時這個文件也可以採用markdown的格式進行撰寫。

  pandas
pandas是一個資料輸入格式的函式庫,可以讀取Excel與其它格式並且轉成資料表格data frame的格式,同時它也有一個相關的pandas-datareader,可以讀world bank、Yahoo、Google等各種相關數據。

因此,在使用quantopian與zipline時,你也可以搭配這些相關的library,進行自己客製化的資料處理與分析。