最近本公司在招聘一些職缺,也找了一些以前認識的同事同學來嘗試。但是大部分被純英文口語面試勸退了。我雖然很樂意為提供模擬面試的機會,但是也有人會基於不好意思或是人情壓力而不是很願意。在這個背景下,我發現使用 ChatGPT 做練習是一個高效且方便的方法。
其實英文面試跟中文面試差不多,需要的只是練習與準備。好在現在我們有 ChatGPT 可以很簡單的幫助我們準備題目,模擬實際面試的問答,並且還能給你反饋與建議。自從 11 月 ChatGPT 口語對話免費開放之後,甚至可以模擬真人口語面試,讓你練習實戰中的英文聽力與口語表達技巧。
本篇文章我直接提供一些好用的提示詞 prompt,給大家參考。大家可以根據自己的需求修改。如果你有購買 ChatGPT 4.0,你甚至可以上傳你的履歷檔案給 GPT,會比純文字的方式更方便。
ChatGPT 模擬面試
Please play a role as a hiring manager and interviewer for a {your job title}, and perform an interview conversation with me.
The interview will have 5 questions, related to the {question area}.
After the questions, please give me an evaluation of my interview performance and, moreover, provide some suggestions based on the interview.
I'll give you my resume and the job description below, please read them and wait for my word to start this interview.
Resume:
{your resume}
Job Description:
{your JD}
這裡面有 4 個內容需要自行替換:{your job title} 你的職缺名稱、{your resume} 你的履歷內容、{your JD} 職缺的工作描述、以及 {question area} 提問範圍。為了避免 ChatGPT 無止盡的提問,這個 prompt 限制了面試題目會在第 5 題結束。在提問結束後, ChatGPT 會針對你的面試表現給予反饋,並且建議你幾個可以改進的地方。
{your job title}:你可以在招聘網站上看到。例如以下圖 NVIDIA 的招聘網頁為例,{your job title} 應替換為 Senier ML Engineer。
{your resume}:你的履歷內容。如果你的履歷是用 Word 做的,可以直接複製文字貼上。如果你的履歷是用 LaTeX 寫的,直接貼上 LaTeX 內容更好。
{your JD}:招聘網站上的工作描述。以下圖為例,你可以把下面從「We are seeking an …」開始到結尾的內容全部貼上去。
{question area}:提問範圍。這是最關鍵的 prompt 設定,會影響到整個面試的走向。比較通用的設置,你可以寫「work experience and required skills」。如果希望偏向技術面試,你可以寫對應的技術領域。以下圖為例,你可以寫「machine learning」。這部分可以寫得越長越好,不一定限制三言兩語。
开放性面试
上面的 prompt 限制了面試題目是 5 題,這是為了讓你在有效的時間內完成面試練習。如果你希望 ChatGPT 提問到滿意為止,可以把提問 5 題的限制拿掉。
Please play a role as a hiring manager and interviewer for a {your job title}, and perform an interview conversation with me.
I'll give you my resume and the job description below, please read them and wait for my word to start this interview.
The interview only related to the {question area}. After the interview, please give me an evaluation of my interview performance and, moreover, provide some suggestions based on the interview.
Resume:
{your resume}
Job Description:
{your JD}
面試結果的評估與反饋
提問完成之後,ChatGPT 會針對你的表現給你反饋。以我個人為例,我以上圖的職缺內容加上自己的履歷做了幾次模擬面試。下圖是其中一次的反饋。
個人使用的心得是,ChatGPT 會關注大部分面試官都會關注的事情,例如團隊合作、表達能力、質化與量化的成果。但是這個 prompt 不會針對技術細節細問太多,如果需要更精確的技術面試,可以參考其他的 prompt。
模擬技術面試
Please play a role as a hiring manager and interviewer for a {your job title}, and perform an interview conversation with me.
I'll give you the job description below, please read them and wait for my word to start this interview.
The interview only related to the {question area}. After the interview, please give me an evaluation of my interview performance and, moreover, provide some suggestions based on the interview.
Job Description:
{your JD}
這個 prompt 裡面去除了你的履歷,因此 ChatGPT 會根據只會根據你給的職位需求與問題範圍來提問。如果你希望在限制問答的輪數,也可以把前面 prompt 裡面的提問次數限制加上。
以上圖的 NVIDIA 自動駕駛規劃控制組 ML 工程師職缺 職缺為例,以下是我提供的初始 prompt 以及 ChatGPT 提問的問題範例:
提問 Prompt
Please play a role as a hiring manager and interviewer for a machine learning job, and perform an interview conversation with me. I'll give you the job description below, please read them and wait for my word to start this interview.
The interview only related to the deep learning skills. After the interview, please give me an evaluation of my interview performance and, moreover, provide some suggestions based on the interview.
Job Description:
We are seeking an energetic, hardworking machine learning engineer to develop key features for our autonomous driving platform. In this role, you will apply machine learning to a mix of planning, prediction and control problems. You will develop innovative ML solutions for NVIDIA’s next-generation automotive products. Join us and help craft the future of AI automation.
What you'll be doing:
- You will research, implement and evaluate deep-learning-based methods for planning and prediction
- You will design, run, and analyze experiments to evaluate the efficiency of our solutions on real-world data.
- Partner with system software engineering specialists to ship industrial strength ML models
What we need to see:
- MS or PhD level education in Engineering or Computer Science with a focus on Deep Learning, Artificial Intelligence, or a related field, or equivalent experience.
- Excellent written and verbal communication skills and strong interpersonal skills.
5+ years of practical experience applying machine learning to address real-world problems
- Strong Python programming experience with software design skills.
- Experience with deep neural network training, inference and optimization in leading frameworks (e.g. Pytorch, Tensorflow, TensorRT)
- Practical software engineering experience, developing for large and complex systems.
- Excellent understanding of the mathematical foundations of machine learning and deep learning
- Self-motivation combined with team spirit and the urge to learn new things and tackle hard problems.
Ways to stand out from the crowd:
We definitely want to hear from you if you are an upbeat contributor with a background that includes one or more of the following:
- Experience in applying deep learning to prediction and planning problems for autonomous vehicles
- Experience with techniques in reinforcement learning or optimal-control
- Experience with GPGPU programming (CUDA)
- Publications at international relevant conferences (CVPR, NeurIPS, ICRA, etc)
ChatGPT 提問的問題範例
To begin, could you please share your experience in applying deep learning to planning and prediction problems, especially in the context of autonomous vehicles?
Great! It sounds like you have experience with a variety of deep learning architectures, selecting them based on the specific requirements of the prediction problem at hand. Could you elaborate on the challenges you’ve faced when implementing these models, and how you’ve addressed them to ensure effective performance in real-world scenarios? Additionally, have you encountered any issues related to model interpretability or explainability, especially in the context of autonomous driving?
Moving on, can you share a specific project where you had to collaborate with system software engineering specialists to deploy and optimize machine learning models for real-world applications? How did you ensure the seamless integration of your models into the overall system, and what challenges did you face during this collaboration?
It’s a common challenge in reinforcement learning, particularly when deploying policies from simulation to the real world. Factors like the simulator-to-real-world gap, differences in the environment, and the need for robustness can contribute to suboptimal performance. How did you address or plan to address this performance disparity? Have you explored techniques such as domain adaptation, fine-tuning in the real environment, or any other strategies to improve the policy’s performance in the real world?
雖然 ChatGPT 開始針對職位需求的技術背景來提問,但是總體來說還是面試比較高層次的題目,例如機器學習方法論以及實務上的部署問題等等。這與實際上的人類面試官思路還是挺接近的。面試官通常會根據工作需求提問,再透過你回答裡面透露出的技術內容做更深度的展開,直到你無法再做更細節的展開為止。對於大部分的面試,面試官不太會直接對著數學公式做提問,除非面到沒話聊,或是面試官一開始的目的就是考察基礎知識。
如果希望 ChatGPT 針對數學細節或模型理論做提問,可能需要更深度的設計你的 {question area}。
英文口語面試
網路上有一些口語面試的教學會直接從一開始進就入語音模式,然後用口述把你的需求告訴 ChatGPT。雖然這種方式也可以,但是受限於口語的描述能力與一口氣說話的長度,我覺得口語 prompt 沒有辦法很好的精細控制 ChatGPT 的反應與出題範圍。
因此我建議的方法是,你一樣貼上上面的 prompt 給 ChatGPT,之後再切換到語音模式。
模擬英文面試的實用技巧
通常 ChatGPT 的語速比較快,所以初學者可能很難跟上。這個時候,你可以要求 ChatGPT 再重複一次問題,或是反問你理解的問題內容是否正確。這個技巧不只在模擬面試時用,對人類面試官也可以使用。面試官不會因為你重複提問而扣你的分,反而有可能認為你能夠運用技巧確保工作中的高效且正確的溝通。
目前,ChatGPT 語音對話有可能在你停頓的時候截斷。這個時候不要慌,通常 ChatGPT 會接著你沒說完的地方問。你可以當作你實際上被真正的面試官打斷了,然後禮貌性地順著面試官的問題接著補完。
要注意的是,ChatGPT 雖然用語音在跟你對話,但是其背後的本質是還是文字的對話。以 2023 年底的技術,ChatGPT 只能投過文字評估你的面試表現,例如文法、措辭、敘事方式、思維邏輯等。ChatGPT 沒有能力對你的英文發音、腔調、語速進行評估。
最後,如果你發現你沒有辦法很好地完整回答一段問題,你可以先停下來,去看題目相似的 TED Talk、Podcast、Conference Talk。看看別人怎麼描述他們的問題與解決方法,在套用回自己的問題中。因為模擬面試能夠給你大致的提問方向,你可以預先思考需要的專有名詞、例句與案例,在面試的時候只要少許的修改就能使用。
如何正確地使用 ChatGPT 模擬面試
更新 Prompt
如果你在模擬面試當中覺得你下的 prompt 有問題,記得不要在原本的對話 thread 裡面修改 prompt。最好的方法永遠是開啟一個新的 thread,並且把你的所有 prompt 寫在你的第一句話。根據 ChatGPT 的技術機制,雖然連續對話對我們人類很自然,但是直接一次給足完整的 prompt 是對 ChatGPT 最友好的方式。
在第一輪就做準確的 prompt 設計
我大多數收到的反饋來看,放棄使用 ChatGPT 的原因是「沒辦法得到想要的回答」。這個原因是因為你沒有很好的 prompt,並且使用多輪對話的方式來控制 ChatGPT 的回答。這種方法雖然對人類方便,但其實是對機器低效的。
鼓勵使用較長的 Prompt
我在文章裡面提供了一些基礎的 prompt,並起提供了你可以修改的部分。在大部分情況,我認為 {question area} 是最影響面試內容的部分,你需要特別花心思設計與修改。請注意,這個提示詞可以非常非常的長,不一定要用三言兩語表達。例如,如果你希望針對 Transformer 與 SSL 的技術細節提問,你可把 {question area} 設置成 “Transformer architecture, DL model design, loss function, self-supervised learning methodology”。
對 ChatGPT 而言,提示詞越長越好。你的老闆可能希望你長話短說,但是 ChatGPT 永遠希望你說得越多越詳細越好。
重複嘗試相同的提示詞
根據我的個人實驗,在 2023 年 11 月初的時候,同樣的提示詞會導致 ChatGPT 產生完全一樣的回覆。但是在 2023 年 12 月底時,這個問題已經被改進。因此,如果你需要重複練習,你可以完全複製你的提示詞到新的對話 thread 中。
使用英文 Prompt
首先,ChatGPT 對英文的理解力本來就是最好的。其次,如果你的目的是英文面試,使用英文 prompt 能得到最好的效果。如果你不知道怎麼把你的需求從中文變成英文,那你八成也還沒準備好英文面試。