شاهد المزيد على موقع Sharpapi.com »
يرجى الرجوع إلى المسؤول:
composer require sharpapi/sharpapi-php-clientسجل في Sharpapi.com واحصل على مفتاح API.
هذا كل شيء!
$ sharpApi = new SharpAPI SharpApiService SharpApiService ( SHARP_API_KEY );
$ statusUrl = $ sharpApi -> productCategories (
' Lenovo Chromebook Laptop (2023), 14" FHD Touchscreen Slim 3,
8-Core MediaTek Kompanio 520 CPU, 4GB RAM, 128GB Storage ' ,
' German ' , // optional language
400 , // optional quantity
' optional neutral voice tone ' , // optional voice tone
' optional current e-store categories ' // optional context, current categories to match
);
$ resultSharpApiJob = $ sharpApi -> fetchResults ( $ statusUrl );
var_dump ( $ resultSharpApiJob -> getResultJson ());تتطلب حالة الاستخدام النموذجية هذه الخطوات:
fetchResults($statusUrl) التي تعمل في وضع الاقتراع ، وإرسال طلبات تحت كل 10 ثوانٍ لمدة 180 ثانية (يمكن تخصيص هذه القيم ، تحقق من رمز مصدر SharpApiService ).SharpApiJob .success يمكنك الحصول على النتائج مع إحدى الطرق ، على سبيل المثال $jobResultJson = $jobResult->getResultJson() .عادة ما تستغرق كل وظيفة تم إرسالها مكانًا ما بين ثانيتين إلى دقيقة.
بعد تلك الفترة ، عادة ما يكون للوظيفة التي تم إرجاعها حالة success وستكون النتائج متاحة لمزيد من المعالجة. كل طريقة API إرجاع تنسيق إرجاع مختلف. انتقل إلى قائمة أساليب API/نقاط النهاية أدناه للحصول على التفاصيل »
يضمن واجهة برمجة التطبيقات الخاصة بنا إعادة التنسيق الصحيح في كل مرة. محركات الذكاء الاصطناعى التي تستخدمها Sharpapi في حالات نادرة لديها ميل إلى سوء التصرف والمهلة أو إرجاع بيانات غير صحيحة. في هذه الحالات ، سيتم failed status التي تم إرجاعها للوظيفة. يمكنك إعادة تشغيل طلب الوظيفة نفسه بالضبط في هذه الحالة.
طالما أن المهمة لا تزال تتم معالجتها بواسطة محركنا ، فسوف تستمر في العودة إلى الحالة pending .
يتم تشغيل طلبات HTTP الأساسية مع Guzzle ، لذلك من الجيد التحقق من استثناءات Guzzy النموذجية:
use GuzzleHttp Exception ClientException ;
// Step 1: dispatch the job to the API with one of the methods, for example:
try {
$ statusUrl = SharpApiService:: summarizeText (
$ text ,
' German ' // optional language
500 , // optional length
' neutral ' // optional voice tone
);
// $statusUrl example value: 'https://sharpapi.com/api/v1/job/status/75acb6dc-a975-4969-9ef1-c62cebc511cb'
} catch ( ClientException $ e ) {
$ e -> getResponse ()
}
// Step 2: request to check job status in polling mode and wait for the result
$ jobResult = SharpApiService:: fetchResults ( $ statusUrl );
// Step 3: get results of dispatched API job, f.e. this returns job result as a prettied JSON
$ jobResultJson = $ jobResult -> getResultJson ();
// ..or PHP array:
$ jobResultArray = $ jobResult -> getResultArray ();
// ..or PHP stdClass:
$ jobResultObject = $ jobResult -> getResultObject (); <?php
namespace App Http Controllers ;
use GuzzleHttp Exception GuzzleException ;
use SharpAPI SharpApiService SharpApiService ;
class SharpTest extends Controller
{
public function __construct ( public SharpApiService $ sharpApiService )
{
}
/**
* @throws GuzzleException
*/
public function detect_phones (): void
{
$ statusUrl = $ this -> sharpApiService -> detectPhones (
' Where to find us? Call with a sales tech advisor:
Call: 1800-394-7486 or our Singapore office +65 8888 8888 '
);
$ result = $ this -> sharpApiService -> fetchResults ( $ statusUrl );
dd ( $ result -> getResultJson ());
/* returned:
[
{
"detected_number": "1800-394-7486",
"parsed_number": "+18003947486"
},
{
"detected_number": "+65 8888 8888",
"parsed_number": "+6588888888"
}
]
*/
}
} تُرجع كل طريقة دائمًا كائن SharpApiJob ، حيث ستعيد طرق getResultJson / getResultArray / getResultObject بنية بيانات مختلفة. يرجى الرجوع إلى الأمثلة التفصيلية المقدمة في Sharpapi.com.
SharpApiLanguages لجعل الكود أكثر قابلية للقراءة.يقوم بتوفيس ملف السيرة الذاتية (CV) من تنسيقات متعددة (PDF/DOC/DOCX/TXT/RTF) وإرجاع كائن واسع من نقاط البيانات.
يمكن أيضًا توفير معلمة لغة الإخراج الاختيارية (يتم تعيين قيمة English على أنها المعلمة الافتراضية).
$ statusUrl = SharpApiService:: parseResume ( ' /test/resume.pdf ' , ' English ' ); استنادًا إلى قائمة المعلمات الواسعة التي توفر نقطة النهاية هذه تفاصيل الوظائف الموجزة في تنسيق الاستجابة ، بما في ذلك الوصف القصير ومتطلبات الوظيفة والمسؤوليات الوظيفية. المعلمة الإلزامية الوحيدة هي name .
تستخدم هذه الوظيفة معلمة متخصصة في فئة DTO ( Data Transfer Object ) تسمى JobDescriptionParameters للمساعدة في التحقق من صحة معلمات الإدخال. فقط معلمة name في مُنشئ هذا DTO إلزامي.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة Voice_Tone. يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
توفر طريقة API أيضًا معلمة سياق اختيارية ، والتي يمكن استخدامها لتوفير إرشادات مرنة إضافية لمعالجة المحتوى.
$ jobDescriptionParameters = new JobDescriptionParameters (
name: " PHP Senior Engineer " ,
company_name: " ACME LTD " , // optional
minimum_work_experience: " 5 years " , // optional
minimum_education: " Bachelor Degree " , // optional
employment_type: " full time " , // optional
required_skills: [ ' PHP8 ' , ' Laravel ' ], // optional
optional_skills: [ ' AWS ' , ' Redis ' ], // optional
country: " United Kingdom " , // optional
remote: true , // optional
visa_sponsored: true , // optional
voice_tone: ' Professional and Geeky ' , // optional voice tone
context: null , // optional context, additional AI processing instructions
language: null // optional output language
);
$ statusUrl = SharpApiService:: generateJobDescription ( $ jobDescriptionParameters );يولد قائمة بالمهارات ذات الصلة بأوزانها كقيمة تعويم (1.0-10.0) حيث 10 ٪ يساوي 100 ٪ ، وهي أعلى درجة ذات صلة.
المعلمة الأولى فقط ( name ) مطلوب.
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
$ statusUrl = SharpApiService:: relatedSkills (
' MySQL ' ,
' English ' , // optional language
10 // optional quantity
);يولد قائمة بمواقع الوظائف ذات الصلة مع أوزانها كقيمة تعويم (1.0-10.0) حيث 10 يساوي 100 ٪ ، أعلى درجة.
المعلمة الأولى فقط ( name ) مطلوب.
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
$ statusUrl = SharpApiService:: relatedJobPositions (
' Senior PHP Engineer ' ,
' English ' , // optional language
10 // optional quantity
);يقوم بتوصيف مراجعة منتج العميل ويوفر مشاعره (إيجابية/سلبية/محايدة) مع درجة تتراوح بين 0-100 ٪. رائع لمعالجة تقرير المشاعر لأي متجر عبر الإنترنت.
$ statusUrl = SharpApiService:: productReviewSentiment ( ' customer review contents ' );يولد قائمة بالفئات المناسبة للمنتج مع الأوزان ذات الصلة كقيمة تعويم (1.0-10.0) حيث 10 يساوي 100 ٪ ، أعلى درجة من الأهمية. توفير اسم المنتج ومعلماته للحصول على أفضل فئة تطابقات ممكنة. يأتي في متناول يدي مع بيانات كتالوج المنتجات ومعالجة المنتجات بالجملة.
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
ضمن سياق المعلمة الاختيارية الإضافية ، يمكنك تقديم قائمة بالفئات الأخرى التي سيتم أخذها في الاعتبار أثناء عملية التعيين (على سبيل المثال فئات التجارة الإلكترونية الحالية).
$ statusUrl = SharpApiService:: productCategories (
' Sony Playstation 5 ' ,
' English ' , // optional language
5 , // optional quantity
' Tech-savvy ' , // optional voice tone
' Game Console, PS5 Console ' // optional context, current categories to match
);يولد نسخة أقصر من وصف المنتج. توفير العديد من التفاصيل والمعلمات للمنتج للحصول على أفضل مقدمة تسويقية ممكنة. يأتي في متناول يدي مع بيانات كتالوج المنتجات ومعالجة المنتجات بالجملة.
يمكنك الحد من الإخراج باستخدام معلمة max_length . يرجى مراعاة أن max_length بمثابة اقتراح قوي لنموذج اللغة ، بدلاً من شرط صارم ، للحفاظ على المعنى العام للنتيجة.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
$ statusUrl = SharpApiService:: generateProductIntro (
' Sony Playstation 5 ' ,
SharpApiLanguages:: ENGLISH , // optional language
300 , // optional length
' Funny ' // optional voice tone
);يولد بريدًا إلكترونيًا شخصيًا شكرًا للعميل بعد الشراء. لا يحتوي محتوى الاستجابة على العنوان أو التحية أو معلومات المرسل في النهاية ، بحيث يمكنك تخصيص بقية البريد الإلكتروني بسهولة.
يمكنك الحد من الإخراج باستخدام معلمة Max_Length. يرجى مراعاة أن max_length بمثابة اقتراح قوي لنموذج اللغة ، بدلاً من شرط صارم ، للحفاظ على المعنى العام للنتيجة.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل مضحكة أو سعيدة ، أو حتى اسم كاتب مشهور.
توفر طريقة API أيضًا معلمة سياق اختيارية ، والتي يمكن استخدامها لتوفير إرشادات مرنة إضافية لمعالجة المحتوى.
$ statusUrl = SharpApiService:: generateThankYouEmail (
' Sony Playstation 5 ' ,
SharpApiLanguages:: ENGLISH , // optional language
250 , // optional length
' Neutral ' , // optional voice tone
' Must invite customer to visit again before Holidays ' // optional context
); ترجمة النص المقدم إلى لغة محددة. 80 لغة مدعومة. يرجى التحقق من refized SharpApiLanguages enum class للحصول على التفاصيل.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل مضحكة أو سعيدة ، أو حتى اسم كاتب مشهور.
تتوفر معلمة context اختياري أيضًا. يمكن استخدامه لتوفير المزيد من السياق للنص المترجم ، مثل مثال حالة الاستخدام أو بعض التفسيرات الإضافية.
$ statusUrl = SharpApiService:: translate (
' turn ' ,
SharpApiLanguages:: FRENCH , // optional language
' neutral ' , // optional voice tone
' to turn a page ' // optional context
);
// will result in :
// {"content": "tourner", "to_language": "French", "from_language": "English"} يولد نسخة إعادة صياغة من النص المقدم. مطلوب فقط معلمة content . يمكنك تحديد لغة الإخراج ، وأقصى طول للحرف ، ونغمة الصوت.
يمكن توفير تعليمات إضافية حول كيفية معالجة النص في معلمة السياق. يرجى مراعاة أن max_length بمثابة اقتراح قوي لنموذج اللغة ، بدلاً من شرط صارم ، للحفاظ على المعنى العام للنتيجة.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone اختيارية. يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
توفر طريقة API أيضًا معلمة context اختيارية ، والتي يمكن استخدامها لتوفير إرشادات مرنة إضافية لمعالجة المحتوى.
$ statusUrl = SharpApiService:: paraphrase (
$ text ,
SharpApiLanguages:: FRENCH , // optional language
500 , // optional length
' neutral ' , // optional voice tone
' avoid using abbreviations ' // optional context
);تصحيحات (والتحقق من القواعد النحوية) نص المقدمة.
$ statusUrl = SharpApiService:: proofread ( $ text );يتحقق إذا تم توفير المحتوى الذي يجتاز اختبار ترشيح البريد العشوائي. يوفر نسبة مئوية درجة الثقة وتفسير ما إذا كان يتم اعتباره البريد العشوائي أم لا. هذه المعلومات مفيدة للمشرفين لاتخاذ قرار نهائي.
$ statusUrl = SharpApiService:: detectSpam ( $ text );يوسع النص المقدم لأي أرقام هواتف ويعيد الإصدار المكتشف الأصلي وتنسيق E.164 الخاص به. قد يكون مفيدًا في حالة المعالجة والتحقق من صحة أجزاء كبيرة من البيانات مقابل أرقام الهواتف أو Fe إذا كنت ترغب في اكتشاف أرقام الهواتف في الأماكن التي لا يفترض أن تكون فيها.
$ statusUrl = SharpApiService:: detectPhones ( $ text );توفي النص المقدم لأي رسائل بريد إلكتروني محتملة. قد يكون مفيدًا في حالة المعالجة والتحقق من صحة أجزاء كبيرة من البيانات مقابل عناوين البريد الإلكتروني أو FE إذا كنت ترغب في اكتشاف رسائل البريد الإلكتروني في الأماكن التي لا يفترض أن تكون فيها.
$ statusUrl = SharpApiService:: detectEmails ( $ text );ينشئ قائمة بالكلمات/العلامات الرئيسية الفريدة بناءً على المحتوى المقدم.
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone .
$ statusUrl = SharpApiService:: generateKeywords (
$ text ,
' English ' , // optional language
5 , // optional length
' Freaky & Curious ' , // optional voice tone
' add emojis! ' // optional extra context instructions for content processing
);يولد نسخة ملخصة من المحتوى المقدم. مثالي لتوليد مقدمات تسويقية للنصوص الأطول.
يمكنك الحد من الإخراج باستخدام معلمة max_length . يرجى مراعاة أن max_length بمثابة اقتراح قوي لنموذج اللغة ، بدلاً من شرط صارم ، للحفاظ على المعنى العام للنتيجة.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_ton E. يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
$ statusUrl = SharpApiService:: summarizeText (
$ text ,
' English ' , // optional language
' David Attenborough ' , // optional voice tone
' add emojis! ' // optional extra context instructions for content processing
);يولد جميع علامات التعريف الأكثر أهمية بناءً على المحتوى المقدم. تأكد من تضمين رابط لموقع الويب وعنوان URL للصور للحصول على أكبر عدد ممكن من العلامات المأهولة.
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_ton E. يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
$ statusUrl = SharpApiService:: generateSeoTags (
$ text ,
' English ' , // optional language
' David Attenborough ' // optional voice tone
);تقوم بتوصيف مراجعة منتج السفر/الضيافة وتوفر مشاعرها (إيجابية/سلبية/محايدة) مع درجة تتراوح بين 0-100 ٪. رائع لمعالجة تقرير المشاعر لأي متجر عبر الإنترنت.
$ statusUrl = SharpApiService:: travelReviewSentiment ( $ text ); يولد قائمة بالفئات المناسبة لمنتج الجولات والأنشطة ذات الأوزان ذات الصلة كقيمة تعويم (1.0-10.0) حيث تساوي 10 ٪ ، وهي أعلى درجة ذات صلة. توفير اسم المنتج ومعلماته للحصول على أفضل فئة تطابقات ممكنة. يأتي في متناول يدي مع بيانات كتالوج المنتجات ومعالجة المنتجات بالجملة. مطلوب فقط اسم المعلمة productName .
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
ضمن context المعلمة الاختيارية الإضافية ، يمكنك تقديم قائمة بالفئات الأخرى التي سيتم أخذها في الاعتبار أثناء عملية التعيين (على سبيل المثال فئات التجارة الإلكترونية الحالية).
$ statusUrl = SharpApiService:: toursAndActivitiesProductCategories (
' Oasis of the Bay '
'Ha Long', // optional city
' Vietnam ' , // optional country
' English ' , // optional language
10 , // optional quantity
' Adventurous ' , // optional voice tone
' Bay Hotels, Ha Long Hotels ' // optional context, current categories to match
); يولد قائمة بالفئات المناسبة لمنتج نوع الضيافة مع أوزان صلة كقيمة تعويم (1.0-10.0) حيث 10 يساوي 100 ٪ ، وهي أعلى درجة ذات صلة. توفير اسم المنتج ومعلماته للحصول على أفضل فئة تطابقات ممكنة. يأتي في متناول يدي مع بيانات الفهارس التي تملأ البيانات ومعالجة المنتجات بالجملة. مطلوب فقط اسم المعلمة productName .
يمكنك الحد من الإخراج باستخدام معلمة max_quantity .
يمكنك تعيين نمط الكتابة المفضل لديك من خلال توفير معلمة voice_tone . يمكن أن تكون الصفات مثل funny أو joyous ، أو حتى اسم كاتب مشهور.
ضمن context المعلمة الاختيارية الإضافية ، يمكنك تقديم قائمة بالفئات الأخرى التي سيتم أخذها في الاعتبار أثناء عملية التعيين (على سبيل المثال فئات التجارة الإلكترونية الحالية).
$ statusUrl = SharpApiService:: hospitalityProductCategories (
' Hotel Crystal 大人専用'
'Tokyo', // optional city
' Japan ' , // optional country
' English ' , // optional language
10 , // optional quantity
' Adventurous ' , // optional voice tone
' Tokyo Hotels, Crystal Hotels ' // optional context, current categories to match
);نقطة النهاية للتحقق من التفاصيل المتعلقة بالفترة الحالية من الاشتراك
$ statusUrl = SharpApiService:: quota ();سوف يؤدي إلى:
{
"timestamp" : " 2024-03-19T12:49:41.445736Z " ,
"on_trial" : false ,
"trial_ends" : " 2024-03-17T07:57:46.000000Z " ,
"subscribed" : true ,
"current_subscription_start" : " 2024-03-18T12:37:39.000000Z " ,
"current_subscription_end" : " 2024-04-18T12:37:39.000000Z " ,
"subscription_words_quota" : 100000 ,
"subscription_words_used" : 9608 ,
"subscription_words_used_percentage" : 0.1
} subscription_words_used_percentage هي نسبة مئوية من استخدام الحصص الشهرية الحالية وقد تكون بمثابة تنبيه لمستخدم الاعتمادات المستنفدة. مع قيمة أعلى من 80 ٪ ، يُنصح بالاشتراك في المزيد من الاعتمادات على https://sharpapi.com/dashboard/credits لتجنب اضطراب الخدمة.
تتوفر هذه القيم أيضًا في لوحة القيادة على https://sharpapi.com/dashboard
نقطة نهاية Ping البسيطة للتحقق من توفر API ومنطقة Timze الداخلية (الطابع الزمني).
$ statusUrl = SharpApiService:: ping ();سوف يؤدي إلى:
{
"ping" : " pong " ,
"timestamp" : " 2024-03-12T08:50:11.188308Z "
}من فضلك دعنا نعرف »
يرجى الاطلاع على Changelog لمزيد من المعلومات حول ما تغير مؤخرًا.
ترخيص معهد ماساتشوستس للتكنولوجيا (MIT). يرجى الاطلاع على ملف الترخيص لمزيد من المعلومات.