ChatGPT'de Uzmanlaşma: LLM'lerle Etkili Özetleme

ChatGPT'de Uzmanlaşma: LLM'lerle Etkili Özetleme

Kaynak Düğüm: 2763303

Metin Özetleme ChatGPT

AI görüntü oluşturma aracı Dall-E tarafından hayal edilen özetleme aracıları.

Yeni bir restoranı her ziyaret ettiğinizde Google haritalarına yorum bırakan nüfusun bir parçası mısınız?

Veya belki de, özellikle düşük kaliteli bir ürün tarafından tetiklendiğinizde, Amazon satın alımları hakkındaki görüşlerinizi paylaşan türden birisiniz?

Endişelenme, seni suçlamayacağım - hepimizin anları var!

Günümüzün veri dünyasında, hepimiz veri akışına çeşitli şekillerde katkıda bulunuyoruz. Çeşitliliği ve yorumlama zorluğu nedeniyle özellikle ilginç bulduğum bir veri türü, her gün İnternet üzerinden yayınlanan sayısız inceleme gibi metinsel verilerdir. Metinsel verileri standartlaştırmanın ve yoğunlaştırmanın önemini hiç düşündünüz mü?
Özetleme aracıları dünyasına hoş geldiniz!

Özetleme aracıları, bilgileri yoğunlaştırarak ve çok sayıda uygulama ve platformda ilgili içeriğe hızlı erişim sağlayarak günlük hayatımıza sorunsuz bir şekilde entegre oldu.

Bu makalede, ChatGPT'nin özel uygulamalarımız için güçlü bir özetleme aracı olarak kullanımını inceleyeceğiz. Büyük Dil Modellerinin (LLM) metinleri işleme ve anlama yeteneği sayesinde, metinleri okumaya ve doğru özetler oluşturmaya veya bilgileri standartlaştırmaya yardımcı olabilirler. Bununla birlikte, sınırlamalarını kabul etmenin yanı sıra, böyle bir görevi yerine getirirken potansiyellerini nasıl ortaya çıkaracaklarını bilmek önemlidir.

Özetleme için en büyük sınırlama?
LLM'ler, belirli karakter veya kelime sınırlamalarına bağlı kalma söz konusu olduğunda genellikle yetersiz kalır. özetlerinde.

ChatGPT ile özet oluşturmak için en iyi uygulamaları keşfedelim özel uygulamamız için, sınırlamalarının ardındaki nedenler ve bunların nasıl aşılacağı!

Bu kapsamlı eğitim içeriği sizin için yararlıysa şunları yapabilirsiniz: AI araştırma e-posta listemize abone olun yeni materyal çıkardığımızda uyarılmak. 

ChatGPT ile Etkili Özetleme

Özetleme ajanları İnternet'in her yerinde kullanılmaktadır. Örneğin, web siteleri, makalelerin özlü özetlerini sunmak için özetleme araçları kullanır ve kullanıcıların tüm içeriğe dalmadan haberlere hızlı bir genel bakış elde etmelerini sağlar. Sosyal medya platformları ve arama motorları da bunu yapıyor.

Haber toplayıcılardan ve sosyal medya platformlarından e-ticaret web sitelerine kadar özetleme aracıları, dijital manzaramızın ayrılmaz bir parçası haline geldi.. LLM'lerin artmasıyla birlikte, bu temsilcilerden bazıları artık daha etkili özetleme sonuçları için yapay zeka kullanıyor.

ChatGPT, okuma görevlerini hızlandırmak ve metinleri sınıflandırmak için özetleme araçları kullanan bir uygulama oluştururken iyi bir müttefik olabilir. Örneğin, bir e-ticaret işimiz olduğunu ve tüm müşteri yorumlarımızı işlemekle ilgilendiğimizi hayal edin. ChatGPT, herhangi bir incelemeyi birkaç cümleyle özetlememize, genel bir formatta standartlaştırmamıza, incelemenin hissiyatı ve sınıflandırma buna göre.

İncelemeyi ChatGPT'ye aktarabileceğimiz doğru olsa da, en iyi uygulamaların bir listesi var. — ve kaçınılması gereken şeyler — Bu somut görevde ChatGPT'nin gücünden yararlanmak için.

Bu örneği hayata geçirerek seçenekleri keşfedelim!

Örnek: E-ticaret Yorumları

Kendi yaptığım gif.

Belirli bir ürün için e-ticaret web sitemizdeki tüm incelemeleri işlemekle ilgilendiğimiz yukarıdaki örneği ele alalım. Yıldız ürünümüzle ilgili aşağıdaki gibi değerlendirmeleri işleme almak isteriz: çocuklar için ilk bilgisayar!

prod_review = """
I purchased this children's computer for my son, and he absolutely adores it. He spends hours exploring its various features and engaging with the educational games. The colorful design and intuitive interface make it easy for him to navigate. The computer is durable and built to withstand rough handling, which is perfect for active kids. My only minor gripe is that the volume could be a bit louder. Overall, it's an excellent educational toy that provides hours of fun and learning for my son. It arrived a day earlier
than expected, so I got to play with it myself before I gave it to him. """

Bu durumda, ChatGPT'nin şunları yapmasını isteriz:

  • İncelemeyi olumlu veya olumsuz olarak sınıflandırın.
  • 20 kelimelik incelemenin bir özetini sağlayın.
  • Tüm incelemeleri tek bir formatta standart hale getirmek için yanıtı somut bir yapıyla çıkarın.

Uygulama Notları

İşte özel uygulamamızdan ChatGPT'yi istemek için kullanabileceğimiz temel kod yapısı. ayrıca link veriyorum Jupyter Not Defteri Bu makalede kullanılan tüm örneklerle birlikte.

import openai
import os openai.api_key_path = "/path/to/key" def get_completion(prompt, model="gpt-3.5-turbo"): """
This function calls ChatGPT API with a given prompt
and returns the response back. """ messages = [{"role": "user", "content": prompt}] response = openai.ChatCompletion.create( model=model, messages=messages, temperature=0 ) return response.choices[0].message["content"] user_text = f"""
<Any given text> """ prompt = f"""
<Any prompt with additional text> """{user_text}""" """ # A simple call to ChatGPT
response = get_completion(prompt)

Bu fonksiyon get_completion() verilen bir değerle ChatGPT API'sini çağırır. istemi. Bilgi istemi ek içeriyorsa kullanıcı metni, bizim durumumuzdaki incelemenin kendisi gibi, kodun geri kalanından üçlü tırnak işaretleri ile ayrılır.

Kullanalım get_completion() ChatGPT'yi istemek için işlev!

İşte yukarıda açıklanan gereksinimleri karşılayan bir bilgi istemi:

prompt = f"""
Your task is to generate a short summary of a product review from an e-commerce site. Summarize the review below, delimited by triple backticks, in exactly 20 words. Output a json with the sentiment of the review, the summary and original review as keys. Review: ```{prod_review}``` """
response = get_completion(prompt)
print(response)

⚠️ Giriş metnini istemin geri kalanından ayırmak için sınırlayıcılar kullanmak ve yapılandırılmış bir çıktı istemek gibi bu örnekte kullanılan yönlendirme yönergeleri şu bölümde tam olarak açıklanmaktadır: OpenAI'nin Bilgi İstemi Mühendisliği Kursunda Öğrendiklerim — Bilgi İstemi Yönergeleri.

İşte ChatGPT'nin yanıtı:

{ "sentiment": "positive", "summary": "Durable and engaging children's computer with intuitive interface and educational games. Volume could be louder.", "review": "I purchased this children's computer for my son, and he absolutely adores it. He spends hours exploring its various features and engaging with the educational games. The colorful design and intuitive interface make it easy for him to navigate. The computer is durable and built to withstand rough handling, which is perfect for active kids. My only minor gripe is that the volume could be a bit louder. Overall, it's an excellent educational toy that provides hours of fun and learning for my son. It arrived a day earlierthan expected, so I got to play with it myself before I gave it to him."
}

Çıktıdan da gözlemleyebileceğimiz gibi, inceleme doğru ve iyi yapılandırılmış, ancak e-ticaretin sahipleri olarak ilgilenebileceğimiz bazı bilgileri kaçırıyor, ürünün teslimatı ile ilgili bilgiler gibi.

Odaklanarak Özetleyin

ChatGPT'den özette belirli şeylere odaklanmasını isteyen istemimizi yinelemeli olarak geliştirebiliriz.. Bu durumda, nakliye ve teslimatla ilgili verilen tüm ayrıntılarla ilgileniyoruz:

prompt = f"""
Your task is to generate a short summary of a product review from an ecommerce site. Summarize the review below, delimited by triple backticks, in exactly 20 words and focusing on any aspects that mention shipping and delivery of the product. Output a json with the sentiment of the review, the summary and original review as keys. Review: ```{prod_review}``` """ response = get_completion(prompt)
print(response)

Bu sefer ChatGPT'nin yanıtı şöyle:

{ "sentiment": "positive", "summary": "Durable and engaging children's computer with intuitive interface. Arrived a day earlier than expected.", "review": "I purchased this children's computer for my son, and he absolutely adores it. He spends hours exploring its various features and engaging with the educational games. The colorful design and intuitive interface make it easy for him to navigate. The computer is durable and built to withstand rough handling, which is perfect for active kids. My only minor gripe is that the volume could be a bit louder. Overall, it's an excellent educational toy that provides hours of fun and learning for my son. It arrived a day earlierthan expected, so I got to play with it myself before I gave it to him."
}

Şimdi inceleme çok daha eksiksiz. Orijinal incelemenin önemli odak noktası hakkında ayrıntılar vermek, ChatGPT'nin kullanım durumumuz için değerli olabilecek bazı bilgileri atlamasını önlemek için çok önemlidir..

Bu ikinci denemenin teslimatla ilgili bilgiler içermesine rağmen orijinal incelemenin tek olumsuz yönünü atladığını fark ettiniz mi?

Bunu düzeltelim!

“Özetle” yerine “Çıkart”

Özetleme görevlerini araştırarak şunu öğrendim: kullanıcı istemi yeterince doğru değilse, özetleme LLM'ler için zor bir görev olabilir.

ChatGPT'den belirli bir metnin özetini vermesini isterken, bizim için alakalı olabilecek bilgileri atlayabilir. - son zamanlarda deneyimlediğimiz gibi - veya metindeki tüm konulara aynı önemi verecek, sadece ana noktaların bir özetini verecektir.

LLM'lerdeki uzmanlar bu terimi kullanır çıkarmak ve odak noktaları hakkında ek bilgiler yerine özetlemek bu tür modeller tarafından desteklenen bu tür görevleri yaparken.

Özetleme, odaklanılan konuyla ilgili olmayan konular da dahil olmak üzere metnin ana noktalarına kısa ve öz bir genel bakış sağlamayı amaçlarken, bilgi çıkarma belirli ayrıntıların elde edilmesine odaklanır. ve bize tam olarak aradığımız şeyi verebilir. Çıkarma ile deneyelim!

prompt = f"""
Your task is to extract relevant information from a product review from an ecommerce site to give feedback to the Shipping department. From the review below, delimited by triple quotes extract the information relevant to shipping and delivery. Use 100 characters. Review: ```{prod_review}``` """ response = get_completion(prompt)
print(response)

Bu durumda, ayıklamayı kullanarak yalnızca odaklandığımız konu hakkında bilgi alırız: Shipping: Arrived a day earlier than expected.

otomasyon

Bu sistem tek bir inceleme için çalışır. Bununla birlikte, somut bir uygulama için bilgi istemi tasarlarken, modeldeki herhangi bir aykırı değeri veya hatalı davranışı yakalayabilmemiz için onu bir dizi örnekte test etmek önemlidir..

Birden çok incelemenin işlenmesi durumunda, yardımcı olabilecek örnek bir Python kod yapısı aşağıda verilmiştir.

reviews = [ "The children's computer I bought for my daughter is absolutely fantastic! She loves it and can't get enough of the educational games. The delivery was fast and arrived right on time. Highly recommend!", "I was really disappointed with the children's computer I received. It didn't live up to my expectations, and the educational games were not engaging at all. The delivery was delayed, which added to my frustration.", "The children's computer is a great educational toy. My son enjoys playing with it and learning new things. However, the delivery took longer than expected, which was a bit disappointing.", "I am extremely happy with the children's computer I purchased. It's highly interactive and keeps my kids entertained for hours. The delivery was swift and hassle-free.", "The children's computer I ordered arrived damaged, and some of the features didn't work properly. It was a huge letdown, and the delivery was also delayed. Not a good experience overall."
] prompt = f""" Your task is to generate a short summary of each product review from an e-commerce site. Extract positive and negative information from each of the given reviews below, delimited by triple backticks in at most 20 words each. Extract information about the delivery, if included. Review: ```{reviews}``` """

İşte toplu incelemelerimizin özetleri:

1. Positive: Fantastic children's computer, fast delivery. Highly recommend.
2. Negative: Disappointing children's computer, unengaging games, delayed delivery.
3. Positive: Great educational toy, son enjoys it. Delivery took longer than expected.
4. Positive: Highly interactive children's computer, swift and hassle-free delivery.
5. Negative: Damaged children's computer, some features didn't work, delayed delivery.

⚠️ Unutmayın, özetlerimizin kelime kısıtlaması istemlerimizde yeterince açık olmasına rağmen, bu kelime kısıtlamasının hiçbir iterasyonda yapılmadığını rahatlıkla görebiliriz.

Kelime sayımındaki bu uyumsuzluk, LLM'lerin kelime veya karakter sayımına ilişkin kesin bir anlayışa sahip olmamasından kaynaklanmaktadır. Bunun arkasındaki sebep, mimarilerinin ana önemli bileşenlerinden birine dayanmaktadır: belirteç.

Tokenizatör

ChatGPT gibi LLM'ler, çok miktarda dil verisinden öğrenilen istatistiksel kalıplara dayalı olarak metin oluşturmak için tasarlanmıştır. Akıcı ve tutarlı metin oluşturmada son derece etkili olmalarına rağmen, kelime sayısı üzerinde kesin kontrolden yoksundurlar..

Yukarıdaki örneklerde, çok kesin bir kelime sayımı hakkında talimat verdiğimizde, ChatGPT bu gereksinimleri karşılamakta zorlanıyordu. Bunun yerine, aslında belirtilen kelime sayısından daha kısa bir metin oluşturmuştur.

Diğer durumlarda, daha uzun metinler veya yalnızca aşırı ayrıntılı veya ayrıntıdan yoksun metinler oluşturabilir. Bunlara ek olarak, ChatGPT, kelime sayısına sıkı sıkıya bağlı kalmak yerine tutarlılık ve alaka düzeyi gibi diğer faktörlere öncelik verebilir.. Bu, içeriği ve tutarlılığı açısından yüksek kaliteli, ancak kelime sayısı gereksinimini tam olarak karşılamayan bir metinle sonuçlanabilir.

Belirteç oluşturucu, üretilen çıktıdaki sözcük sayısını açıkça etkileyen ChatGPT mimarisindeki temel öğedir..

Kendi yaptığım gif.

Tokenizer Mimarisi

Belirteç oluşturucu, metin oluşturma sürecindeki ilk adımdır. ChatGPT'ye girdiğimiz metin parçasını ayrı öğelere ayırmaktan sorumludur. — jetonlar — , bunlar daha sonra yeni metin oluşturmak için dil modeli tarafından işlenir.

Belirteç oluşturucu bir metin parçasını belirteçlere ayırdığında, bunu hedef dilin anlamlı birimlerini tanımlamak için tasarlanmış bir dizi kurala göre yapar. Ancak, bu kurallar her zaman mükemmel değildir ve belirteç oluşturucunun belirteçleri metnin genel kelime sayısını etkileyecek şekilde böldüğü veya birleştirdiği durumlar olabilir..

Örneğin, aşağıdaki cümleyi ele alalım: "Fıstık ezmeli sandviç yemek istiyorum". Belirteç oluşturucu belirteçleri boşluklara ve noktalamalara göre ayıracak şekilde yapılandırılmışsa, bu cümleyi belirteç sayısına eşit toplam sözcük sayısı 8 olacak şekilde aşağıdaki belirteçlere bölebilir.

Kendi kendine yapılan görüntü.

Ancak, belirteç oluşturucu tedavi edecek şekilde yapılandırılmışsa "fıstık ezmesi" bileşik bir kelime olarak, cümleyi aşağıdaki belirteçlere bölebilir, toplam kelime sayısı 8, ancak simge sayısı 7.

Bu nedenle, belirteç oluşturucunun yapılandırılma şekli, metnin genel sözcük sayısını etkileyebilir.ve bu, LLM'nin kesin kelime sayımlarıyla ilgili talimatları takip etme yeteneğini etkileyebilir. Bazı belirteç oluşturucular, metnin nasıl belirtileceğini özelleştirmek için seçenekler sunsa da, bu, kelime sayımı gereksinimlerine tam olarak uyulmasını sağlamak için her zaman yeterli değildir. Bu durumda ChatGPT için mimarisinin bu bölümünü kontrol edemeyiz..

Bu, ChatGPT'yi karakter veya kelime sınırlamalarını gerçekleştirmede o kadar iyi yapmaz, ancak belirteç belirleyici etkilemediği için bunun yerine cümleler denenebilir. cümle sayısı, ancak uzunlukları.

Bu kısıtlamanın farkında olmak, uygulamanız için en uygun istemi aklınızda oluşturmanıza yardımcı olabilir. ChatGPT'de kelime sayımının nasıl çalıştığına dair bu bilgiye sahip olarak, e-ticaret uygulaması için istemimizi son kez tekrarlayalım!

Sonuç: E-ticaret İncelemeleri

Bu makaleden öğrendiklerimizi son bir istemde birleştirelim! Bu durumda, sonuçları şu şekilde soracağız: HTML daha güzel bir çıktı için format:

from IPython.display import display, HTML prompt = f"""
Your task is to extract relevant information from a product review from an ecommerce site to give feedback to the Shipping department and generic feedback from the product. From the review below, delimited by triple quotes construct an HTML table with the sentiment of the review, general feedback from
the product in two sentences and information relevant to shipping and delivery. Review: ```{prod_review}``` """ response = get_completion(prompt)
display(HTML(response))

Ve işte ChatGPT'nin son çıktısı:

Kendi kendine yapılan ekran görüntüsü Jupyter Not Defteri Bu makalede kullanılan örneklerle.

Özet

Bu makalede, ChatGPT'yi özel uygulamamız için bir özetleme aracısı olarak kullanmanın en iyi uygulamalarını tartıştık.

Bir uygulama oluştururken, ilk denemede uygulama gereksinimlerinize uyan mükemmel istemi bulmanın son derece zor olduğunu gördük. Bence güzel bir eve götürme mesajı yinelemeli bir süreç olarak yönlendirmeyi düşünün tam olarak istediğiniz çıktıyı elde edene kadar bilgi isteminizi hassaslaştırıp modellediğiniz yer.

İsteminizi yinelemeli olarak iyileştirerek ve onu üretime dağıtmadan önce bir grup örneğe uygulayarak, emin olabilirsiniz. çıktı, birden çok örnekte tutarlıdır ve aykırı yanıtları kapsar. Örneğimizde, birisi inceleme yerine rastgele bir metin sağlayabilir. ChatGPT'ye, bu aykırı yanıtları hariç tutmak için standartlaştırılmış bir çıktıya sahip olması talimatını da verebiliriz..

Ek olarak, ChatGPT'yi belirli bir görev için kullanırken, hedef görevimiz için LLM'leri kullanmanın artılarını ve eksilerini öğrenmek de iyi bir uygulamadır. Bir giriş metninin insan benzeri ortak bir özetini istediğimizde, çıkarma görevlerinin özetlemeden daha etkili olduğu gerçeğiyle bu şekilde karşılaştık. Ayrıca özetin odak noktasını sağlamanın bir oyun değiştirici Oluşturulan içerikle ilgili.

Son olarak, LLM'ler metin oluşturmada oldukça etkili olabilse de, kelime sayımı veya diğer belirli biçimlendirme gereksinimleriyle ilgili kesin talimatları izlemek için ideal değildirler.. Bu hedeflere ulaşmak için, cümle saymaya bağlı kalmak veya manuel düzenleme veya daha özel yazılımlar gibi diğer araç veya yöntemleri kullanmak gerekebilir.

Bu yazı orijinalinde Veri Bilimine Doğru ve yazarın izniyle TOPBOTS'a yeniden yayınlandı.

Bu makaleyi beğendiniz mi? Daha fazla AI araştırma güncellemesi için kaydolun.

Bunun gibi daha özet makaleler yayınladığımızda size haber vereceğiz.

Zaman Damgası:

Den fazla TOPBOTLAR