總結與編修文字

Working with the OpenAI API

James Chapman

Curriculum Manager, DataCamp

回顧…

  • 問與答(Q&A)
response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "user", "content": "How many days are in October?"}]
)

print(response.choices[0].message.content)
October has 31 days.
Working with the OpenAI API

文字編修

  • 範例:更新姓名、代名詞與職稱

$$

prompt = """
Update name to Maarten, pronouns to he/him, and job title to Senior Content Developer
in the following text:

Joanne is a Content Developer at DataCamp. Her favorite programming language is R,
which she uses for her statistical analyses.
"""
Working with the OpenAI API

文字編修

response = client.chat.completions.create(
    model="gpt-4o-mini",

messages=[{"role": "user", "content": prompt}]
) print(response.choices[0].message.content)
Maarten is a Senior Content Developer at DataCamp. His favorite programming language
is R, which he uses for his statistical analyses.
Working with the OpenAI API

文字摘要

  • 範例:彙整客服對話記錄

客服支援團隊

text = """
Customer: Hi, I'm trying to log into 
my account, but it keeps saying 
my password is incorrect. I'm sure 
I'm entering the right one.  

Support: I'm sorry to hear that! 
Have you tried resetting your password?  
...
"""
Working with the OpenAI API

文字摘要

prompt = f"""Summarize the customer support chat 
             in three concise key points: {text}"""


response = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role": "user", "content": prompt}] ) print(response.choices[0].message.content)
1. Customer couldn't log in due to a password issue and missing reset link.  
2. Support resent the reset email after confirming it was sent.  
3. Customer resolved the issue by using Google sign-in.
Working with the OpenAI API

控制回應長度

  • max_completion_tokens = 5
response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "user", 
  "content": "Write a haiku about AI."}],
  max_completion_tokens=5
)

AI so powerful
Computers
  • max_completion_tokens = 30
response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "user", 
  "content": "Write a haiku about AI."}],
  max_completion_tokens=30
)

A machine mind thinks
Logic dictates its choices
Mankind ponders anew
Working with the OpenAI API

認識 token

$$

  • Tokens:協助 AI 理解與處理文字的單位

$$

句子「How can the OpenAI API deliver business value?」中的每個 token 以不同顏色標示。

1 https://platform.openai.com/tokenizer
Working with the OpenAI API

成本試算

 

  • 使用成本取決於模型token 數量 💰

    • 以「成本/token」計價
    • 輸入與輸出 token 可能不同價
  • 提高 max_completion_tokens 會增加成本 📈

Screenshot 2025-03-05 at 11.46.54.png

Working with the OpenAI API

成本試算

prompt = f"""Summarize the customer support chat 
             in three concise key points: {text}"""

max_completion_tokens = 500

response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "user", "content": prompt}], 
  max_completion_tokens=max_completion_tokens
  )

Working with the OpenAI API

成本試算

# Define price per token
input_token_price = 0.15 / 1_000_000
output_token_price = 0.6 / 1_000_000

# Extract token usage input_tokens = response.usage.prompt_tokens
output_tokens = max_completion_tokens
# Calculate cost cost = (input_tokens * input_token_price + output_tokens * output_token_price) print(f"Estimated cost: ${cost}")
Estimated cost: $0.00124
1 https://openai.com/pricing
Working with the OpenAI API

一起來練習吧!

Working with the OpenAI API

Preparing Video For Download...