Re: [閒聊] ChatGPT是語言模型不是搜尋引擎
※ 引述《a1e (我上了賊船了囧)》之銘言:
: → pig0038: 現階段就只是取代 stackoverflow 02/24 20:38
這個敘述也太強烈了吧?
StackOverflow 上面不是只有 code template,重要的是有很多的討論和推論。
而且如果有新的library出來,很多人也會在StackOverflow上討論
關於這個議題,我來分享我最近遇到的案例
最近在工作上寫code遇到一個問題是,我發現,
只要我想在一個class template裡面建一個 virtual function template,
在編譯的過程裡面,會在 link 的時候出現錯誤,也就只寫個 Error @#$@#$@#$
後來我去 Google 搜尋 "c++ virtual template" 跳出了這個結果
https://i.imgur.com/QjQ2PLo.jpg
(我這邊virtual字還打錯)
技術細節這邊就略過,但至少那個StackOverflow的文章有解決我的疑問。
跟標題有關的是:如果我們把ChatGPT當搜尋引擎用的話呢?
結果是這樣
https://i.imgur.com/4EQ7mOu.jpg
簡單的說就是 ChatGPT好像不是很了解我想問什麼。
當然這時候有人可能講了「你他媽就打那三個關鍵字,誰知道你想找什麼」
但我給Google搜尋引擎的也是同樣的關鍵字 不是嗎?
現在哪個搜尋引擎是你要把問題打得人人都看得懂才能用的?
實際上,清楚地用文字闡述一個問題其實對大部分人來說是相當花心思的
好啦,畢竟我知道ChatGPT是個ChatBot,給他點優惠好了,我把問題寫成
Can I have virtual template function in a class?
結果是
https://i.imgur.com/6Wa4i1N.jpg
我看到的時候想說奇怪,怎麼好像跟上面提到的不同。
ChatGPT的回答裡面還有附上範例程式碼
class Base {
public:
template<typename T>
virtual void foo(T arg) {
std::cout << "Base::foo(" << arg << ") called\n";
}
};
class Derived : public Base {
public:
template<typename T>
void foo(T arg) override {
std::cout << "Derived::foo(" << arg << ") called\n";
}
};
(其實跟我想問的情況也不太一樣,我想問的情境是在 header file 裡面declare)
但是上面那兩個class definition,我到下面這個線上C++ compiler 裡面玩
https://www.onlinegdb.com/online_c++_compiler
是會出現compilation error的
當然也可能是我對 ChatGPT 給的答案有理解上的錯誤
我是覺得ChatGPT目前看起來頂多比較像個搜尋助理啦
--
鳳雛的清楚講習
https://i.imgur.com/23pfZv9.jpg
https://i.imgur.com/wD6J6li.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 98.45.195.96 (美國)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1677245326.A.8B9.html
留言