客戶支持呼叫擁有大量信息,但是找時間手動梳理這些錄音以獲取見解並不容易。想像一下,如果您可以立即將這些長錄音變成清晰的摘要,請跟踪情感在整個通話過程中的變化,甚至根據您想要分析對話的方式而獲得量身定制的見解。聽起來有用嗎?
在本文中,我們將瀏覽創建一個實用的工具,我構建了Snapsynapse(單擊此處),以便做到這一點!使用Pyannote.audio進行言語診斷(標識),轉錄的耳語和Gemini-1.5 Pro來生成AI驅動的摘要,我將展示如何自動化將支持呼叫錄音轉換為可行的見解的過程。在此過程中,您將看到如何清潔和完善轉錄,根據用戶輸入生成自定義摘要以及跟踪情感趨勢 - 所有這些都具有易於遵循的代碼段。這是一個動手指南,用於構建超越轉錄的工具,以幫助您了解和改善客戶支持體驗。
學習目標
- 了解如何使用pyannote.audio進行說話者診斷,從而在客戶支持錄音中分開不同的聲音。
- 學會使用耳語從音頻文件中生成準確的轉錄,並通過刪除填充單詞和無關緊要的文本來清理它們。
- 發現如何使用Gemini-1.5 Pro創建量身定制的摘要,並具有可自定義的提示,以滿足不同的分析需求。
- 探索用於對對話進行情感分析的技術,並在整個通話中可視化情感趨勢。
- 在構建自動化管道方面獲得動手實踐經驗,該管道將音頻數據處理為結構化的見解,從而更容易分析和改善客戶支持互動。
本文作為數據科學博客馬拉鬆的一部分發表。
目錄
- 學習目標
- 什麼是Snapsynaps?
- 關鍵功能
- 建築Snapsynapse:核心功能和功能
- 步驟1:揚聲器診斷和轉錄生成
- 步驟2:清潔生成的轉錄
- 步驟3:使用Gemini 1.5 Pro生成摘要
- 步驟4:情感分析
- 設置Snapsynapse:逐步指南
- 步驟1:克隆存儲庫
- 步驟2:設置虛擬環境
- 步驟3:激活虛擬環境
- 步驟4:安裝所需的依賴項
- 步驟5:設置環境變量
- 步驟6:運行應用程序
- 關於開發Snapsynapse的工具的摘要
- 結論
- 關鍵要點
- 常見問題
什麼是Snapsynaps?
Snapsynapse是將客戶支持呼叫變成寶貴見解的方便工具。它打破了演講者的對話,轉錄所有內容,並突出了整體的情緒和關鍵點,因此團隊可以快速了解客戶的需求。使用Pyannote諸如診斷的模型,用於轉錄的竊竊私語以及Gemini進行摘要,Snapsynapse,snapsynapse提供明確的摘要和情感趨勢。它旨在幫助支持團隊與客戶更好地聯繫並改善服務,一次進行一次對話。
關鍵功能
以下是Snapsynapse的重要關鍵特徵:
- 揚聲器診斷/識別
- 對話成績單生成
- 時間郵票生成對話明智
- 用例基摘要生成
- 情感分析分數
- 通過可視化分析
建築Snapsynapse:核心功能和功能
在本節中,我們將探討使Snapsynapse成為客戶支持分析的強大工具的核心功能。從自動診斷和轉錄電話到生成動態對話摘要,這些功能旨在提高支持團隊效率。 Snapsynapse具有檢測情感趨勢並提供可行的見解的能力,簡化了了解客戶互動的過程。
如果您想查看整個源代碼,請參閱repo中的thefiles:repo_link
我們需要打開AI API和Gemini API來運行此項目。您可以在這裡獲得API - Gemini API,OpenAI API
項目流:
揚聲器診斷 - >轉錄 - >時間戳 - >清潔 - >摘要 - >情感分析
步驟1:揚聲器診斷和轉錄生成
在第一步中,我們將使用一個腳本來獲取音頻文件,將揚聲器分開(診斷),生成轉錄並分配時間戳。腳本的工作方式是,包括代碼和密鑰函數的故障:
腳本概述
這個Python腳本一口氣執行三個主要任務:
- 揚聲器診斷:在音頻文件中標識不同的揚聲器並將其對話分開。
- 轉錄:將每個說話者分開的音頻段轉換為文本。
- 時間戳:為每個口語段添加時間戳。
導入和設置
- 首先,我們將諸如pyannote.audio等必要的庫進行診斷, openai進行轉錄和pydub來處理音頻段。
- 環境變量使用DOTENV加載,因此我們可以安全地存儲OpenAI API密鑰。
主要功能:帶時間戳的診斷轉錄
核心函數Transcribe_with_diarization()結合了所有步驟:
- 診斷:調用perform_diarization()獲取揚聲器段。
- 細分提取:使用PYDUB根據每個段的開始和結束時間將音頻文件切成塊。
- 轉錄:對於每個塊,它通過OpenAI的API調用Whisper模型,以獲取文本轉錄。
- 時間戳和揚聲器信息:每個轉錄都以相應的開始時間,結束時間和揚聲器標籤保存。
def tresscribe_with_diarization(file_path): diarization_result = persim_diarization(file_path) 音頻= audiosegend.from_file(file_path) 轉錄= [] 對於段,_,diarization_result.itertracks中的揚聲器(fard_label = true): start_time_ms = int(segment.start * 1000) end_time_ms = int(segment.end * 1000) 塊=音頻[start_time_ms:end_time_ms] chunk_filename = f“ {sezyer} _sement_ {int(segment.start)}。wav” chunk.export(chunk_filename,格式=“ wav”) 用audio_file開放(chunk_filename,“ rb”): 轉錄= client.audio.transcript。 型號=“ hisper-1”, file = audio_file, response_format =“ json” ) encrpriptions.append({{ “發言人”:發言人, “ start_time”:segment.start, “ end_time”:segment.end, “轉錄”:轉錄 })) 打印({chunk_filename}的{speaker}完成的轉錄。”)
保存輸出
- 最終的抄錄以及揚聲器標籤和時間戳將保存到診斷為診斷中,創建了對話的結構化記錄。
- 最後,我們在測試音頻文件test_audio_1.wav上運行該函數,以查看在作用中的完整診斷和轉錄過程。
瞥見生成的輸出並保存在diarized_transcription.py文件中:
步驟2:清潔生成的轉錄
- 該文件著重於清潔診斷和轉錄過程產生的轉錄。
- 它從JSON文件中加載了診斷的轉錄,並刪除了諸如“ UM”,“ UH”和“您知道”之類的常見填充單詞以提高可讀性。
- 此外,它消除了額外的白色空間並將文本歸一化,以使轉錄更簡潔和拋光。
- 清潔後,系統將新的轉錄保存在名為cleaned_transcription.py的JSON文件中,以確保數據準備好進行進一步分析或洞察力生成。
#清潔轉錄文本的功能 def clean_transcription(文本): #常見填充單詞列表 filler_words = [ “ um”,“ uh”,“喜歡”,“你知道”,“實際上”,“基本上”,“我的意思”, “有點”,“”,“右”,“好”,“ so”,“好”,“ Just” 這是給出的 #匹配填充單詞(案例不敏感)的正則格式模式 filler_pattern = re.compile(r'\ b('|'.join(filler_words)r')\ b',re.ignorecase) #刪除填充單詞 cleaned_text = filler_pattern.sub('',text) #刪除額外的空格 cleaned_text = re.sub(r'\ s','',cleaned_text).strip() 返回cleaned_text
步驟3:使用Gemini 1.5 Pro生成摘要
在下一步中,我們使用Gemini API根據清潔的轉錄生成結構化的見解和摘要。我們利用Gemini 1.5 Pro模型進行自然語言處理來分析客戶支持呼叫並提供可行的摘要。
這是功能的細分:
- 模型設置: Gemini模型是使用Google.generativeai庫配置的,並牢固地加載了API密鑰。它支持基於不同提示格式的生成見解。
- 提示進行分析:幾個預定義的提示旨在分析支持呼叫的各個方面,例如一般呼叫摘要,說話者交流,投訴和決議,升級需求以及技術問題故障排除。
- 生成結構化內容:函數生成_analysis()採用清潔的轉錄文本,並使用預定義的提示之一對其進行處理。它將輸出分為三個部分:摘要,操作項目和關鍵字。
- 用戶互動:腳本允許用戶從多種摘要格式中進行選擇。用戶的選擇確定使用哪個提示來生成轉錄中的見解。
- 輸出生成:處理轉錄後,將結果的見解(將其組織成結構化的JSON格式)保存到文件中。該結構化數據使支持團隊更容易從呼叫中提取有意義的信息。
簡短了解所使用的不同提示:
一瞥生成的輸出:
步驟4:情感分析
此外,在下一步中,我們對客戶支持呼叫轉錄進行情感分析,以評估整個對話中的情感語氣。它使用來自NLTK的Vader情感分析工具來確定對話每個段的情感分數。
這是該過程的細分:
- 使用Vader的情感分析:該腳本使用Vader( Valence Aware Away詞典和情感推理)詞典的serniveStsentyAnalyzer 。它為每個細分市場分配了情感分數,其中包括表示整體情感(正,中性或負)的複合分數。
- 處理轉錄:清潔轉錄是從JSON文件加載的。評估轉錄中的每個條目的情感,並將結果存儲在揚聲器標籤和相應的情感分數中。腳本計算總情感評分,客戶和支持代理人的平均情感,並將整體情感分類為正,中性或負面。
- 情感趨勢可視化:使用matplotlib,該腳本生成了一個線圖,顯示了隨著時間的流逝的情感趨勢,x軸代表對話段和y軸顯示情感分數。
- 輸出:系統將情感分析結果(包括分數和整體情感)保存到JSON文件中,以便以後容易訪問和分析。它可以看到情節中的情感趨勢,以提供支持呼叫期間情感動態的概述。
用於計算整體情感分數的代碼
#計算整體情感得分 總_sentiment_score = total_compound / len(sentiment_results) #計算客戶和代理商的平均情感 平均_customer_sentiment = customer_sentiment / customer_count如果custerut_count else 0 0 平均_agent_sentiment = agent_sentiment / agent_count如果agent_count else 0 0 #確定整體情緒為正,中性或負面 如果總_sentiment_score> 0.05: 總體_sentiment =“正” elif usital_sentiment_score <h4 id="用於生成圖的代碼">用於生成圖的代碼</h4><pre class="brush:php;toolbar:false">def plot_sentiment_trend(sentiment_results): #提取繪圖的補充情感分數 compound_scores = [entriment'] ['compound']用於sentiment_results中的輸入] #創建一個單線圖顯示情感趨勢 plt.figure(無花果=(12,6)) plt.plot(compound_scores,color ='purple',linestyle =' - ',標記='o',markersize = 5,label =“情感趨勢”) plt.axhline(0,color ='灰色',linestyle =' - ')#為中性情緒添加零行 plt.title(“客戶支持對話的情感趨勢”,fontsize = 16,fontWeight ='Bold',color =“ darkblue”) plt.xlabel(“段索引”) plt.ylabel(“複合情緒得分”) plt.grid(true,linestyle =' - ',alpha = 0.5) plt.legend() plt.show()
情感分析得分生成:
產生的情感分析圖:
設置Snapsynapse:逐步指南
您可以在此處找到代碼存儲庫 - repo_link
現在,讓我們瀏覽如何在本地機器上設置並運行Snapsynapse:
步驟1:克隆存儲庫
首先將項目存儲庫克隆到您的本地計算機,以開始使用Snapsynapse。這提供了對應用程序源代碼及其所有基本組件的訪問。
git克隆https://github.com/keerthanareddy95/snapsynapse.git CD Snapsynapse
步驟2:設置虛擬環境
虛擬環境有助於隔離依賴性並確保您的項目順利運行。此步驟為Snapsynapse設置了一個獨立的工作區,可以在沒有其他軟件包乾擾的情況下操作。
#對於Windows: Python -M Venv Venv #對於MacOS和Linux: Python3 -M Venv Venv
步驟3:激活虛擬環境
#對於Windows: 。\ venv \ scripts \ activate #對於MacOS和Linux: 來源VENV/bin/activate
步驟4:安裝所需的依賴項
有了虛擬環境,下一步是安裝所有必要的庫和工具。這些依賴性使Snapsynapse的核心功能包括轉錄本的產生,說話者診斷,時間郵票的產生,摘要生成,情感分析分數,可視化等。
pip install -r要求.txt
步驟5:設置環境變量
為了利用AI驅動的見解,診斷,轉錄和摘要,您需要為Google Gemini配置API鍵,並打開AI Whisper。
在項目的根部創建.ENV文件,並為Google Gemini添加您的API鍵,然後打開AI Whisper。
Google_api_key =“ your_google_api_key” openai_api_key =“ your_open_ai_api_key”
步驟6:運行應用程序
- 首先運行轉錄文件:py文件:此文件執行轉錄生成,揚聲器診斷和時間戳記的生成。它將輸出保存在名為diarized_transcript.json的JSON文件中。
- 接下來,運行calling.py文件:此文件將將diarized_transcript.py文件作為輸入並清潔轉錄並將結果保存在cleaned_transcription.json文件中。
- 此外,運行summary.py文件:在這裡您需要提及雙子API密鑰。該文件將將CleanEd_transcription.py文件作為輸入,並提示用戶輸入他們希望根據用例生成的摘要樣式。基於用戶輸入,系統將相應的提示傳遞給雙子座,該提示會生成摘要。然後,該系統將生成的摘要存儲在名為Summary_output.json的JSON文件中。
- 最後,運行sentiment_analysis.py文件:運行此文件將生成整體情感分數,也將生成情感分析分數的圖形表示以及它們如何通過音頻文件進行。
關於開發Snapsynapse的工具的摘要
現在讓我們查看以下用於Snapsynapse的開發工具:
- pyannote.audio:提供用於執行揚聲器診斷的管道模塊,該模塊將音頻文件中的不同揚聲器分開。
- Openai:用於與Openai的API互動,以通過耳語模型轉錄。
- PYDUB(AuciieSement):處理音頻文件,允許揚聲器分割和導出音頻塊。
- Google.generativeai:訪問Google Gemini模型的庫,此處用於生成來自客戶支持轉錄的結構化摘要和見解。
- NLTK(自然語言工具包):用於自然語言處理的庫,在此專門用於從Vader導入sentimentStrentyAnalyzer,以分析音頻文件中的情感。
- Matplotlib:通常與PLT一起使用的可視化庫,此處包含在整個音頻文件中可視化情感。
結論
簡而言之,Snapsynapse通過將原始的呼叫記錄轉換為可行的見解,從而徹底改變了客戶支持分析。從說話者的診斷和轉錄到產生結構化的摘要和情感分析,Snapsynapse簡化了每一步,以全面了解客戶互動。借助Gemini模型量身定制的提示和詳細的情感跟踪的力量,用戶可以輕鬆獲得摘要和趨勢,以突出關鍵的見解和支持結果。
對Google Gemini,Pyannote Audio和Whisper的大喊大叫,可以通過其創新工具為該項目供電!
您可以在此處查看回購。
關鍵要點
- Snapsynapse使用戶能夠從診斷和抄錄到生成摘要進行端到端處理客戶支持電話。
- 有了五個不同的及時選擇,用戶可以根據特定需求定制摘要,無論是關注問題,行動項目還是技術支持。此功能可幫助學習者探索迅速的工程,並嘗試不同的輸入如何影響AI生成的輸出。
- Snapsynapse在整個對話中都追踪了情感趨勢,從而提供了視覺表現,可以幫助用戶更好地了解客戶滿意度。對於學習者來說,這是應用NLP技術並學習如何在現實世界應用中解釋情感數據的機會。
- Snapsynaps自動化轉錄清理和分析,使客戶支持洞察力易於訪問,以獲得更快,數據驅動的決策。學習者從了解自動化如何簡化數據處理,使他們可以專注於高級見解而不是重複的任務中受益。
常見問題
Q1。 Snapsynapse可以分析哪些類型的數據?答:Snapsynapse可以處理格式MP3和WAV的音頻文件。
Q2。 Snapsynapse如何處理轉錄精度和清理?答:Snapsynapse使用耳語進行轉錄,然後進行清理過程,以消除填充單詞,暫停和無關緊要的內容。
Q3。我可以自定義呼叫分析的摘要格式嗎?答:是的! Snapsynapse提供了五個不同的及時選擇,使您可以選擇滿足您需求的摘要格式。這些包括焦點領域,例如行動項目,升級需求和技術問題。
Q4。情感分析提供了哪些見解,如何顯示?答:Snapsynapse的情感分析評估了對話的情感基調,提供了情感分數和趨勢圖。
Q5。什麼是客戶調用分析,如何使企業受益?A.客戶呼叫分析使用AI驅動的工具來轉錄,分析和從客戶互動中提取有價值的見解,幫助企業改善服務,確定趨勢並提高客戶滿意度。
Q6。客戶調用分析如何提高客戶支持質量?答:通過客戶通話分析,企業可以更深入地了解客戶情緒,常見問題和代理績效,從而導致更明智的決策和改進的客戶服務策略。
本文所示的媒體不由Analytics Vidhya擁有,並由作者酌情使用。
以上是Snapsynapse使客戶呼叫分析變得容易的詳細內容。更多資訊請關注PHP中文網其他相關文章!

介紹 恭喜!您經營一家成功的業務。通過您的網頁,社交媒體活動,網絡研討會,會議,免費資源和其他來源,您每天收集5000個電子郵件ID。下一個明顯的步驟是

介紹 在當今快節奏的軟件開發環境中,確保最佳應用程序性能至關重要。監視實時指標,例如響應時間,錯誤率和資源利用率可以幫助MAIN

“您有幾個用戶?”他扮演。 阿爾特曼回答說:“我認為我們上次說的是每週5億個活躍者,而且它正在迅速增長。” “你告訴我,就像在短短幾週內翻了一番,”安德森繼續說道。 “我說那個私人

介紹 Mistral發布了其第一個多模式模型,即Pixtral-12b-2409。該模型建立在Mistral的120億參數Nemo 12B之上。是什麼設置了該模型?現在可以拍攝圖像和Tex

想像一下,擁有一個由AI驅動的助手,不僅可以響應您的查詢,還可以自主收集信息,執行任務甚至處理多種類型的數據(TEXT,圖像和代碼)。聽起來有未來派?在這個a


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

Dreamweaver Mac版
視覺化網頁開發工具

禪工作室 13.0.1
強大的PHP整合開發環境

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器