Il s’agit d’une expression qui contient du texte sur lequel une opération d’agrégation doit être effectuée, comme des critiques de restaurants ou des transcriptions téléphoniques.
instruction
Chaîne contenant une spécification en langage naturel de l’agrégation à effectuer, par exemple « Résumez les avis » ou « Identifiez toutes les personnes mentionnées et rédigez une courte biographie pour chacune d’entre elles ».
Pour des performances optimales, suivez ces directives :
Utilisez un texte en langage clair pour l’instruction.
Donnez une instruction déclarative au lieu de poser une question. Par exemple, au lieu d’une question telle que « Pouvez-vous résumer cela ? », utilisez « Résumez les transcriptions des appels téléphoniques ».
Décrivez le texte fourni dans l’instruction. Par exemple, au lieu d’une instruction telle que « Résumez », utilisez « Résumez les transcriptions des appels téléphoniques ».
Décrivez le cas d’utilisation prévu. Par exemple, au lieu de « trouver la meilleure critique », utilisez « Trouver la critique de restaurant la plus positive et la mieux rédigée à mettre en évidence sur le site web du restaurant ».
Plusieurs colonnes peuvent être utilisées dans l’expression de chaîne à l’aide de CONCAT ou de l’opérateur ||. Voir les exemples ci-dessous.
Essayez de diviser l’instruction en plusieurs étapes. Par exemple, au lieu de « Résumez les nouveaux articles », utilisez « Vous recevrez des articles d’actualité provenant de différents éditeurs présentant des événements sous différents angles. Veuillez créer un résumé concis et détaillé des textes sources sans omettre aucune information cruciale ».
AI_AGG peut être utilisé comme une simple fonction scalaire sur des constantes de chaîne. Dans l’exemple suivant, AI_AGG est utilisé pour synthétiser les avis des produits, qui sont fournis sous la forme d’une seule chaîne.
SELECTAI_AGG('[Excellent, Excellent, Great, Mediocre]','Summarize the product ratings for a blog post targeting consumers');
Overall, the product has received overwhelmingly positive reviews, with the majority of users rating it as 'Excellent' or 'Great'. Only a small percentage of users had a mediocre experience with the product. This suggests that the product is well-liked by most consumers and is a great option for those looking for a reliable choice.
AI_AGG peut également être utilisé sur une colonne de données. Dans l’exemple suivant, les avis des produits de l’exemple ci-dessus sont fournis sous forme de colonne dans une table à l’aide d’une expression de table commune.
WITHreviewsAS(SELECT'The restaurant was excellent.'ASreviewUNIONALLSELECT'Excellent! I loved the pizza!'UNIONALLSELECT'It was great, but the service was meh.'UNIONALLSELECT'Mediocre food and mediocre service')SELECTAI_AGG(review,'Summarize the restaurant reviews for potential consumers')FROMreviews;
Reviews for this restaurant are mixed. Some customers had a very positive experience, describing the restaurant as "excellent" and loving the pizza. However, others had a more neutral or negative experience, citing mediocre food and service.
AI_AGG peut être utilisé sur plusieurs colonnes de données en utilisant CONCAT ou l’opérateur ||.
WITHreviewsAS(SELECT'The restaurant was excellent.'ASreview,'Pizza'ASmenu_itemUNIONALLSELECT'Excellent! I loved the pizza!','Pizza'UNIONALLSELECT'It was great, but the service was meh.','Burger'UNIONALLSELECT'Mediocre food and mediocre service','Pancakes')SELECTAI_AGG('Menu Item: '||menu_item||'\nReview: '||review,'Summarize the restaurant reviews for potential consumers')FROMreviews;
Based on the reviews, the restaurant seems to receive high praise for their pizza, with two reviews using the word "excellent" to describe their experience. However, the reviews for other menu items, such as burgers and pancakes, are more mixed, with some customers expressing disappointment with the service or finding the food to be just mediocre. Overall, potential consumers may want to consider ordering pizza if they decide to dine at this restaurant.
AI_AGG peut également être utilisé en combinaison avec GROUP BY. L’exemple suivant résume les avis de deux produits (identifiés par la colonne product_id) dans une table d’avis.
WITHreviewsAS(SELECT1ASrestaurant_id,'The restaurant was excellent.'ASreviewUNIONALLSELECT1,'Excellent! I loved the pizza!'UNIONALLSELECT1,'It was great, but the service was meh.'UNIONALLSELECT1,'Mediocre food and mediocre service'UNIONALLSELECT2,'Terrible quality ingredients, I should have eaten at home.'UNIONALLSELECT2,'Bad restaurant, I would avoid this place.')SELECTrestaurant_id,AI_AGG(review,'Summarize the restaurant reviews for potential consumers')FROMreviewsGROUPBY1;
+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| RESTAURANT_ID | SUMMARIZED_REVIEW ||---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| 1 | Reviews for this restaurant are mixed. Some customers had a very positive experience, describing the restaurant as "excellent" and loving the pizza. However, others had a more neutral or negative experience, citing mediocre food and service. |+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| 2 | Two reviewers had extremely negative experiences at this restaurant, citing poor quality ingredients and advising others to avoid it. |+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
L’instruction peut être utilisée pour diverses tâches d’agrégation et pour configurer le style et le ton de la réponse. L’exemple suivant utilise une instruction pour trouver l’avis le plus positif pour chaque produit et fournir des traductions en français et en polonais de l’avis.
WITHreviewsAS(SELECT1ASproduct_id,'Excellent'ASreviewUNIONALLSELECT1,'Excellent'UNIONALLSELECT1,'Great'UNIONALLSELECT1,'Mediocre'UNIONALLSELECT2,'Terrible'UNIONALLSELECT2,'Bad'UNIONALLSELECT2,'Average')SELECTproduct_id,AI_AGG(review,'Identify the most positive rating and translate it into French and Polish, one word only')ASsummarized_reviewFROMreviewsGROUPBY1;