Bevar den arabiske skrift, og kontrollér det fundne navn
Send navnet i den oprindelige Unicode-stavemåde. Værktøjets inputfelt viser arabisk tekst fra højre mod venstre, mens denne danske guide og svarets JSON læses fra venstre mod højre. Du behøver ikke først at omskrive navnet til latinsk skrift. At API'et accepterer denne skrift, garanterer ikke, at datasættet indeholder en tilsvarende post.
Opslaget i datasættet anvender Unicode-normaliseringen NFKC og deler teksten op i dele. Der er ingen generel regel, der fjerner arabiske diakritiske tegn eller sidestiller forskellige stavemåder. Vokaltegn og andre forskelle i stavemåden kan derfor afgøre, hvilken lagret post der findes. Bevar den oprindelige værdi i stedet for i stilhed at behandle alle varianter som ens.
Et fuldt navn kan give flere kandidater. Den tilgængelige post med det højeste lagrede samlede antal vælges, så det første ord er ikke nødvendigvis det fornavn, der returneres. Kontrollér data.name og data.match.name, før du bruger et resultat til at berige en post.
| Eksempel på input | Hvad det viser | Hvad du kontrollerer |
|---|---|---|
ليلى الخطيب | Eksempel på et fuldt navn | Flere dele kan indgå i opslaget. Kontrollér det valgte match; eksemplet forudsiger ikke et live-resultat. |
ليلى / لَيْلَى | Stavemåde uden og med vokaltegn | Send den faktiske stavemåde. Det er ikke garanteret, at begge tegnstrenge fører til den samme lagrede post. |
Layla / Leila | Stavemåder med latinsk skrift | Det er forskellige inputværdier. V2 garanterer ikke, at translitterationer automatisk sidestilles. |
country: SA | Eksempel på kontekst: Saudi-Arabien | Denne kontekst er ikke en standard for alle arabisktalende fællesskaber. Udelad country, hvis landet ikke er kendt. |
Vælg landekonteksten SA bevidst
Live-demoen sender country: SA (Saudi-Arabien). API'et vælger ikke dette land ud fra den skrift, navnet er skrevet med. Brug en kendt, relevant landekontekst i din integration, eller udelad country. Gør ikke denne eksempelværdi til en standard for alle poster.
For hver kandidat vælger opslaget den landespecifikke post, hvis den findes, og ellers den globale post. Derefter vælges den tilgængelige kandidat med det højeste lagrede samlede antal. Matchets faktiske omfang fremgår af data.match.scope og data.match.country. En landespecifik post med lige store frekvenser erstattes ikke automatisk af det globale resultat; hvis fallback er slået til, kan AI bruges i stedet.
data.input.country beskriver den landekontekst, der blev sendt i forespørgslen. data.country og data.country_source beskriver den returnerede tilknytning til et land og dens oprindelse. Det er forskellige felter, og de siger intet om nationalitet, etnisk oprindelse eller bopæl.
Send en V2-forespørgsel med et navn fra din applikation
Angiv din eksisterende nøgle i GENDERAPI_API_KEY, og kør eksemplet på din server. Forespørgslen slår den almindelige automatiske AI-fallback eksplicit til. Den viser, hvordan forespørgslen er opbygget, ikke en målt nøjagtighed eller en bekræftet dækning. Angiv options.ai_mode: off, hvis du vil have en forudsigelse, der kun bruger datasættet.
Vælg et programmeringssprog. Konfigurér din API-nøgle, og kør derefter eksemplet på din server.
Hver forespørgsel om en forudsigelse er en ny operation, der koster kreditter, også når den gentages. Eksemplerne prøver ikke automatisk igen. Kontrollér opkrævningsstatus, før du sender en ny forespørgsel.
Før du kører: adgang og fejlhåndtering
Kør eksemplerne på din server. Sæt GENDERAPI_API_KEY i procesmiljøet til din eksisterende API-nøgle. Bekræft, at meta.access.mode er api_key: En nøgle, der ikke genkendes, kan føre til IP-prøveadgangen.
JSON-svar med HTTP 4xx og 5xx bevarer fejlens body og returnerer en exitstatus, der ikke er nul. Kontrollér code, action og meta.usage.billing_status, før du prøver igen.
Guide til fejl og nye forsøg →cURL 7.76+ i en POSIX-shell. Kør i din terminal. Dokumentation for kørselsmiljøet
Node.js 22+, indbygget fetch. Gem som example.mjs, og kør node example.mjs. Dokumentation for kørselsmiljøet
Python 3.10+, standardbiblioteket. Gem som example.py, og kør python3 example.py. Dokumentation for kørselsmiljøet
PHP 8+ med cURL-udvidelsen. Gem som example.php, og kør php example.php. Dokumentation for kørselsmiljøet
Java 17+, standard-HTTP-klienten. Gem som GenderApiExample.java, og kør java GenderApiExample.java. Dokumentation for kørselsmiljøet
Konsolapplikation med .NET 8+. Brug som Program.cs i et konsolprojekt, og kør derefter dotnet run. Dokumentation for kørselsmiljøet
Go 1.22+, standardbiblioteket. Gem som main.go, og kør go run main.go. Dokumentation for kørselsmiljøet
Gem resultatet sammen med evidensen
En udledt sammenhæng er ikke det køn, en person selv har oplyst. Gem det oprindelige input, den returnerede evidens og det, personen selv har oplyst, hver for sig. Et ukendt resultat er et gyldigt resultat og bør ikke blive til en gættet kategori i din applikation.
| Felt | Sådan bruger du det |
|---|---|
data.gender / data.result_status | Brug kun male eller female, når status er identified. Bevar den native JSON-værdi null, når resultatet er ukendt. |
data.name / data.match | Kontrollér det returnerede navn og den valgte kandidat. Et match på en delstreng beviser ikke, at inputtet tilhører en person med det navn. |
data.confidence / data.confidence_kind | Konfidensen ligger på en skala fra 0 til 1 eller er null. observed_frequency bygger på lagrede frekvenser, mens model_reported er en værdi angivet af AI. Vurdér tærskelværdier separat for hver type. |
data.source / data.sample_count | Skeln mellem dataset, ai og none. AI-resultater har ingen lagret stikprøvestørrelse. En stikprøvestørrelse er ikke en målt nøjagtighed. |
meta.access.mode | Kontrollér i en integration med konto, at api_key returneres. Manglende eller ukendte nøgler kan i stedet bruge den delte IP-prøveadgang. |
meta.usage | Læs charged_credits og billing_status. Et gennemført ukendt resultat koster kreditter. Et mistet svar beviser ikke, at forespørgslen var gratis. |
Beslut, hvornår AI skal bruges
forceToGenderize er valgfrit for navne, e-mailadresser og brugernavne. Når det er slået til, skal du udelade ai_mode eller bruge fallback. off og always kan ikke kombineres med denne indstilling og returnerer 422. En positiv startsaldo er nok til at starte en forespørgsel, også selvom den endelige opkrævning gør saldoen negativ.
Kaldenavnstilstanden kan returnere et køn sammen med name: null. Den kan også give et ukendt resultat. Hverken den almindelige automatiske AI-fallback eller fortolkningen af kaldenavne garanterer et korrekt svar eller en værdi, der ikke er null.
| Indstilling i forespørgslen | Adfærd | Kreditter for en gennemført forespørgsel |
|---|---|---|
| options.ai_mode: off | Bruger kun datasættet. | 1, også for et ukendt resultat |
| options.ai_mode: fallback | Slår først op i datasættet og bruger derefter almindelig AI, hvis der ikke returneres et køn. Det er standarden for enkeltforespørgsler. | 1 i alt, inklusive automatisk AI-fallback |
| options.ai_mode: always | Bruger AI direkte. | 2 |
| forceToGenderize: true | Slår først op i datasættet og lader derefter AI fortolke et personligt kaldenavn eller alias, også uden et egentligt fornavn. | 1 for et resultat fra datasættet, 2 i alt, hvis AI bruges |
Behandl en liste med navne uden at miste konteksten
Send op til 50 elementer med en API-nøgle eller 10 med IP-prøveadgangen via POST /api/v2/gender/batch. Giv hvert element et unikt id, og bevar den oprindelige værdi for hver række. Hvert element kan have sine egne indstillinger for land og AI; udelad landet, hvis det ikke er kendt.
I modsætning til enkeltforespørgsler, der som standard bruger fallback, bruger elementer i en batch som standard kun datasættet. Angiv options.ai_mode: fallback for hvert element, der har brug for AI. Kontrollér hvert resultat, også efter HTTP 200, gem ukendte resultater, og kontrollér fejl og opkrævning, før du sender igen. Hvert gennemført almindeligt element koster 1 kredit; én HTTP-forespørgsel med en batch svarer ikke til én kredit pr. forudsigelse.
Vid, hvad du sender
Live-demoen sender kun den indtastede værdi til GenderAPI.io, når du selv sender den. Hvis AI bruges, videregives type, value og den sendte landekontekst til den tjeneste, der er konfigureret til forudsigelser. Hvis du kun vil have en forudsigelse fra datasættet, skal du i din integration angive options.ai_mode: off uden forceToGenderize.
Privatlivspolitikken, databehandleraftalen og listen over underdatabehandlere beskriver de offentliggjorte vilkår for behandlingen. Et resultat er en udledt sammenhæng, og det, en person selv oplyser, har forrang. Brug det ikke som grundlag for beslutninger, der har betydelige konsekvenser for en person.
Ofte stillede spørgsmål
Accepterer V2 arabiske navne med diakritiske tegn?
V2 accepterer navne i Unicode, også tekst med arabisk skrift. Datasættets normalisering fjerner som regel ikke arabiske vokaltegn. Stavemåder med og uden vokaltegn kan derfor give forskellige match eller et ukendt resultat.
Fastslår værktøjet en arabisktalende persons nationalitet?
Nej. SA er den landekontekst, der udtrykkeligt er valgt til denne demonstration. Skriften, navnets sammenhæng eller et returneret landefelt siger intet om nationalitet eller bopæl.
Er der offentliggjort en uafhængig evaluering af nøjagtigheden for denne gruppe navne?
Denne side offentliggør ikke en sådan evaluering. At input accepteres, at lagrede frekvenser vises, eller at der returneres en konfidensværdi, er ikke en uafhængig måling af nøjagtigheden. Metodebeskrivelsen forklarer, hvilke data der er tilgængelige, og hvilke målinger der endnu ikke er offentliggjort.
Koster et resultat uden forudsigelse kreditter?
Et gennemført ukendt resultat opkræves. Den almindelige tilstand med datasættet eller med fallback koster 1 kredit i alt. Med forceToGenderize koster forespørgslen 1 kredit, hvis resultatet kommer fra datasættet, eller 2 i alt, hvis AI bruges, også ved et ukendt resultat. Fejl følger separate opkrævningsregler; kontrollér meta.usage.