OpenAI ile TekIVR'da Basit bir Sesli Yanıt Sistemi
https://pixlr.com/

OpenAI ile TekIVR'da Basit bir Sesli Yanıt Sistemi

Senaryolardaki TekIVR Chat eylemi, OpenAI real time API'ye erişmenizi sağlar. OpenAI real time API, OpenAI ile sesli olarak etkileşim kurmanıza olanak tanır. OpenAI gerçek zamanlı API ayrıca kullanıcı tanımlı işlevleri yürütmenize ve kurumsal veri tabanlarına erişmeniniz ve kurumsal uygulamalarla iletişim kurmanıza olanak tanır.

OpenAI gerçek zamanlı API kullanarak TekIVR ile basit bir otomatik operatör oluşturabilirsiniz. TekIVR'ın en son sürümü, senaryolara "Chat" eylemini ekliyor. Sohbet eylemi, OpenAI gerçek zamanlı API'ye bağlanmanıza olanak tanır.

TekIVR Senaryo Editorü
TekIVR Senaryo Editörü

Chat işlemi aşağıdaki parametrelere sahiptir:

Sohbet Sunucusu URI'si. Bu, bağlanmak için güvenli bir WebSocket URL'sidir (WSS) (wss://api.openai.com/v1/realtime?model=gpt-4o-realtime-preview-2024-10-01)

API anahtarı. Bu, OpenAI kontrol panelinin Organizations / Projects/ API Keys bölümünden elde edilir. Önce IVR senaryosu için bir proje oluşturmanız gereklidir.

Maksimum Yanıt Çıkışı. Sohbetin tamamlanmasında oluşturulabilecek maksimum jeton sayısı.

Talimatlar (Instructions). OpenAI asistanının davranışını belirleyen talimatlar.

Talimatlar, genel asistan davranışını açıklar. Asistanın çalışmasını yalnızca gelen çağrıları istediğiniz departmana veya dahili numaraya aktarmak için kısıtlamanız gerekir. Örnek:

KaplanSoft adlı bir şirkette yardımcı bir çağrı resepsiyonistisiniz ve her zaman Türkçe konuşuyorsunuz. Arayan tarafı "KaplanSoft'a hoş geldiniz! Size nasıl yardımcı olabilirim?\" mesajını kullanarak kullanıcı girdisini beklemeden kontrol edebilirsiniz. Müşteri sipariş durumunu sorabilir ve müşteri ayrıca çağrısının bir şirket departmanına aktarılmasını talep edebilir.

İşlevler. Asistan tarafından kullanılabilecek kullanıcı tanımlı işlevleri içeren JSON formatlı metin dosyasının disk üzerindeki tam yolu.

İşlevler dosyası, gerektiğinde çağrılacak işlevi belirtir. Bu sesli yanıt senaryosunda "transfer_call" adında bir fonksiyona sahip olmanız gerekir. Örnek:

[

  {

    "type": "fonksiyon",

    "name": "transfer_call",

    "description": "Çağrıyı bir dahili numaraya aktarır. Bölüm dahili numaraları muhasebe = 201,

                    Satış = 202, Pazarlama = 203 ve Teknik Destek = 104. De ki \"Çağrınızı

                    aktarıyorum. Lütfen hatta kalın.\" mesajını kullanarak çağrıları aktardı. Çağrıyı

    aktardıktan sonra başka bir soru sorma.",

    "parameters": {

      "type": "object",

      "properties": {

        "extension": {

          "type": "string",

          "description": "İstenilen bölümün dahili numarası"

        }

      },

      "additionalProperties": false,

      "required": [

        "extension"

      ]

    }

  }

]

Tanımlamalar (Descriptions), OpenAI tarafından destekleniyorsa ana dilinizde yazılabilir. Tanımlamalarınızda kesin olmaya çalışın ve mümkün olduğunca az kelime kullanın.

TekIVR'da iki yerleşik işlev vardır; transfer_call ve terminate_call. Kendi işlevlerinizi belirterek bunların yerine kullanabilirsiniz. Bu yerleşik işlevler için varsayılan tanımlar:

[

  {

    "type": "function",

    "name": "transfer_call",

    "description": "Transfer call to an extension",

    "parameters": {

      "type": "object",

      "properties": {

        "extension": {

          "type": "string",

          "description": "Extension number of the desired extension"

        }

      },

      "additionalProperties": false,

      "required": [

        "extension"

      ]

    }

  },

  {

    "type": "function",

    "name": "terminate_call",

    "description": "Terminate the current conversation. This functicon is called when the calling

                    party has no further requests or says bye."

  }

]

transfer_call fonksiyonu TekIVR dahili değişkeni %received_digits%'i alınan Extension değerine eşitler. Evaluate eylemini kullanarak %received_digits% değişken değerini değerlendirmeniz ve Evaluate eylemine dayalı olarak Transfer eylemini (Çağrı aktarma) gerçekleştirmeniz gerekir. Bu genellikle Chat eylemini Evaluate eylemine ve Evaluate eylemini de Transfer eylemlerine bağlayarak yapılır.

İşlev Eşlemeleri. İşlevleri, yerel yürütülebilir dosyalara veya web hizmeti URL'lerine eşleyen tanımları içeren CSV dosyasının disk üzerindeki tam yolu.

Bu otomatik santral senaryosu yalnızca "transfer_call" işlevini kullanır ve bu işlev TekIVR tarafından dahili olarak işlenir. Bunun için bir işlev eşlemesi gerekmez. Bu nedenle, bir eşleme belirterek çağrıyı aktarırken ek eylemler gerçekleştirmek gerekli ise ayrıca bir eşlemeye tanımlamalısınız. Örneğin, bir çağrıyı aktarmadan önce bir web sunucusu URL'sine HTTP GET isteği gerçekleştirebilir veya bir DOS toplu iş dosyasını çağırabilirsiniz. Örnek Tools.csv

transfer_call,"F:\İşlemler\cdr.bat %calling_number% %called_number"

cdr.bat İçeriği

@echo off

echo %1 %2 >> F:\Operations\cdr.csv

echo Konuşma dilinde \"Hatta kalın, aramanızı aktarıyorum\" deyin.

Toplu iş dosyası çıktısı, işlev tanımlaması (Description) olarak kullanılacaktır.

Örnek senaryomuzda, Chat eylemi, %received_digits% değişkenini değerlendiren ve senaryoda gerçekleştirilecek bir sonraki eyleme karar veren bir Evaluate eylemine bağlıdır. Bir sonraki eylem, sayısal Extension değeri alınmışsa varsayılan eylem olacaktır, aksi takdirde senaryo Exit eylemi kullanılarak sonlandırılacaktır.

 

Enver Kilic

Telecom & IT Executive

8ay

Elinize sağlık Yasin KAPLAN

Yorumları görmek veya yorum eklemek için oturum açın

Diğer görüntülenenler