「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 電子メールの野獣を飼いならす: 受信トレイ管理における AI を活用した私の冒険

電子メールの野獣を飼いならす: 受信トレイ管理における AI を活用した私の冒険

2024 年 11 月 6 日に公開
ブラウズ:540

Taming the Email Beast: My AI-Powered Adventure in Inbox Management

受信トレイがデジタルの Hydra で、返信した全員に 2 通の新しいメールが送信されているように感じたことはありませんか? ??テクノロジー愛好家の皆さん、私は秘密兵器である人工知能を使ってこの怪物に立ち向かうことにしました! ??️

ユリイカの瞬間

これをイメージしてください: 今は午前 3 時、私は空のコーヒー カップ ☕☕☕ に囲まれ、量では米国議会図書館に匹敵するほどの受信箱を見つめています。そのとき、私は思いつきました。AI がチェスのグランドマスターに勝つことができれば、このメールの迷宮を切り抜けるのに役立つはずですよね?

AI メール ウィスパラーの登場

そこで、私は力を尽くして、AI を活用した電子メール処理システムの作成に取り組みました。それは、決してコーヒーブレイクを要求しない、疲れ知らずで非常に賢いインターンがいると考えてください。このデジタルの驚異がどのように機能するかは次のとおりです:

  1. すべてを見通す目 ?️: 強力な GPT-4 を使用すると、AI の友人が「メールがあります!」と言うよりも早く受信メールをスキャンします。

  2. 組み分け帽子 ?: 次に、各電子メールを「製品のお問い合わせ」または「注文リクエスト」のいずれかに分類します。ホグワーツのようなものですが、メール専用です!

  3. 注文マスター ?: 注文リクエストの場合、「カートに追加」をクリックするよりも早く詳細を抽出し、注文を満たすのに十分な在庫があるかどうかを確認します。

  4. The Smooth Talker ?: 電子メールの種類と注文ステータスに基づいて、シェイクスピアを嫉妬させるようなパーソナライズされた応答を作成します (まあ、シェイクスピアが電子商取引に興味があれば)。

  5. クエリクェラー ❓: 製品に関する問い合わせの場合、「すぐにご連絡します」と言うよりも早く自動返信が送信されます。

シークレットソース (別名: テクノロジースタック)

コーディング愛好家の皆さんに、AI キッチンで何が調理されているかをご紹介します:

  • メインコース: Python ? (コード内の優れたヘビを気に入らない人がいるでしょうか?)
  • 特別な成分: OpenAI の GPT-4 (言語モデルのゴードン ラムゼイ)
  • おかず: パンダ ? (竹をむしゃむしゃ食べるためではなく、データ処理用)
  • シーズニング: Google Sheets API (スプレッドシートはデータ ストレージの縁の下の力持ちであるため)

これが実際にどのように機能するかを確認するために、いくつかのコード スニペットを見てみましょう!

1. 電子メールの分類

GPT-4 を使用して受信メールを分類する方法は次のとおりです:

def classify_email(email_body: str) -> str:
    prompt = (f"Classify the following email as either a 'product inquiry' or an 'order request'. "
              "An 'order request' must include explicit purchase intent, such as specifying quantity, shipping details, or mentioning a transaction."
              "General questions or interest in a product should be classified as a 'product inquiry'.\n\n"
              f"Email: {email_body}\n\nClassification:")
    response = client.chat.completions.create(
        model="gpt-4",
        messages=[{"role": "user", "content": prompt}]
    )

    classification = response.choices[0].message.content.strip().lower()
    if "order request" in classification:
        return "order request"
    elif "product inquiry" in classification:
        return "product inquiry"
    else:
        return "unclassified"

2. 注文処理

注文リクエストの場合、詳細を抽出して在庫を更新します:

def process_order(email_id: str, orders: List[Dict], products_df: pd.DataFrame) -> Tuple[List[Dict], pd.DataFrame]:
    order_status = []
    for order in orders:
        product_id = order['product_id']
        quantity = order['quantity']

        product = products_df[products_df['product_id'] == product_id].iloc[0]
        current_stock = int(product['stock'])

        if current_stock >= quantity > 0 and current_stock > 0:
            status = "created"
            products_df.loc[products_df['product_id'] == product_id, 'stock'] -= quantity
        else:
            status = "out of stock"

        order_status.append({
            'email_id': email_id,
            'product_id': product_id,
            'quantity': quantity,
            'status': status
        })

    return order_status, products_df

3. 応答の生成

最後に、メールの種類と注文ステータスに基づいてパーソナライズされた応答を生成します:

def generate_response(email_name: str, classification: str, order_status: List[Dict], products_df: pd.DataFrame) -> str:
    if classification.lower() == "order request":
        context = "Order Summary:\n"
        for order in order_status:
            product = products_df[products_df['product_id'] == order['product_id']].iloc[0]
            context  = f"Customer name:{email_name} Product: {product['name']}, Quantity: {order['quantity']}, Status: {order['status']}\n"

        prompt = f"""Generate a professional response for the following order:

{context}

If any items are out of stock, suggest alternatives or waiting for restock.
Ensure the tone is professional and enhances the customer experience.

Response:"""
    else:
        prompt = f"""Customer name:{email_name} \n Generate a professional response for a product inquiry. 
Inform the customer that we've received their inquiry and will get back to them with more detailed information shortly. 
Ensure the tone is professional and enhances the customer experience.

Response:"""

    response = client.chat.completions.create(
        model="gpt-4",
        messages=[{"role": "user", "content": prompt}]
    )
    return response.choices[0].message.content.strip()

エウレカモーメント: 学んだこと

  1. スピード スリル ⚡: 迅速な確認メールの方が、送料無料より (ほぼ) 顧客を満足させました。

  2. 正確さが重要 ?: AI プロンプトを微調整するのは、ロボットにダンスを教えるようなものです。練習が必要ですが、うまくいくと素晴らしいものになります。

  3. 在庫テトリス ?: リアルタイムの在庫チェックにより、納品できないユニコーンを約束することができなくなりました。

  4. パーソナル タッチ ?: AI が生成したパーソナライズされた応答により、私たちが心を読まれることなく、顧客は特別な気分になれます。

  5. 予期せぬ事態を予想する ?: 堅牢なエラー処理により、私が認めたい以上に何度もデジタル顔面装置から救われました。

プルーフはプリン (この場合は受信箱) にあります。

テスト データセットで AI メール ラングラーを解放した後:

  • ?電子メールの応答時間は、パラシュートなしのスカイダイバーよりも速く短縮されました(80% 減少)
  • ?注文処理の精度がロケットのように向上しました (95% 向上)
  • ?顧客満足度は、コーディング セッション中のコーヒー摂取量よりも増加しました (40% 向上)

この AI メールの物語の次は何でしょうか?

このプロジェクトは私のペットの実験でしたが (実際のペットはコーディング プロセスに関与しませんでした)、可能性の世界が開かれます。カスタマー サービスの忍者、電子商取引の達人、生産性の達人がこのような AI パワーを駆使しているところを想像してみてください。

グランドフィナーレ

この AI を活用した電子メールの冒険は、「シリコン バレー」の全シーズンを一気に見るよりも楽しかったです (信じてください、私はそうしました)。 AI は世界を征服する準備ができていません (または受信トレイ全体さえも...まだ) が、AI がデジタル コミュニケーションの処理方法をどのように変革できるかを示しています。

さて、テクノロジー愛好家の皆さんに質問します。プロジェクトで AI と踊ったことがありますか?生産性を高めるためにテクノロジーを活用したいですか?以下のコメント欄であなたの成功談 (または笑える失敗談) を聞きたいです!

覚えておいてください: あなたのコードにバグがなく、受信トレイがゼロになりますように! ??

知っていましたか? ?最初の電子メール システムは 1971 年にレイ トムリンソンによって発明されました。私たちが今 AI を使ってメールを管理しているのを彼が見たら、おそらくこう言うでしょう、「君は... 進歩しているね!」

リリースステートメント この記事は次の場所に転載されています: https://dev.to/biswajitfsd/taming-the-email-beast-my-ai-powered-adventure-in-inbox-management-5fc?1 侵害がある場合は、study_golang にご連絡ください。 @163.com 削除
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3