Behold den arabiske stavemåten, og kontroller navnet som ble funnet
Send navnet med den opprinnelige stavemåten i Unicode. Inndatafeltet nedenfor bruker arabisk tekst fra høyre mot venstre, mens denne veiledningen og JSON-svaret leses fra venstre mot høyre. API-et kan ta imot teksten uten at du først omskriver den til latinske bokstaver; at teksten godtas, er ikke et løfte om dekning i datasettet.
Oppslaget i datasettet bruker Unicode-normaliseringen NFKC og deler teksten opp i navnedeler. Det har ingen generell regel som fjerner arabiske diakritiske tegn eller likestiller ulike stavemåter. Vokaltegn og andre forskjeller i stavemåten kan derfor påvirke hvilken lagret nøkkel som blir funnet. Behold den opprinnelige verdien i stedet for å behandle alle varianter som den samme personen.
Et fullt navn kan gi flere kandidater. Den tilgjengelige oppføringen med det høyeste lagrede totalantallet velges, så det første ordet er ikke nødvendigvis fornavnet som returneres. Kontroller data.name og data.match.name før du bruker et resultat til å berike en post.
| Eksempel på inndata | Hva det viser | Hva du bør kontrollere |
|---|---|---|
ليلى الخطيب | Eksempel på et fullt navn | Flere navnedeler kan vurderes. Kontroller den valgte kandidaten; eksemplet viser ikke et resultat fra en faktisk forespørsel. |
ليلى / لَيْلَى | Stavemåte uten og med vokaltegn | Send den faktiske stavemåten. Det er ikke garantert at begge tegnstrengene gir den samme lagrede oppføringen. |
Layla / Leila | Stavemåter med latinske bokstaver | Dette er separate inndataverdier. V2 lover ikke at translitterasjoner automatisk likestilles. |
country: SA | Eksempelkontekst: Saudi-Arabia | Denne konteksten er ikke en standardverdi for alle arabisktalende samfunn. Utelat country når landet er ukjent. |
Velg landkonteksten SA bevisst
Demoen i sanntid sender country: SA (Saudi-Arabia). API-et velger ikke dette landet ut fra skriften navnet er skrevet med. I integrasjonen din bruker du en kjent og relevant landkontekst, eller du utelater country; ikke gjør denne eksempelverdien til en standardverdi for alle poster.
For hver kandidat foretrekker oppslaget i datasettet en eksisterende landrad og vurderer ellers den globale raden. Deretter velges den tilgjengelige kandidaten med det høyeste lagrede totalantallet. Les data.match.scope og data.match.country for å se hvilket omfang treffet faktisk hadde. En landrad med likt antall for begge kjønn erstattes ikke automatisk av et globalt resultat; med fallback kan KI brukes i stedet.
data.input.country beskriver konteksten i forespørselen. data.country og data.country_source beskriver en tilknytning som returneres. Dette er ulike felt, og de fastslår ikke statsborgerskap, etnisitet eller bosted.
Send et arabisk navn med V2
Kjør forespørselen på serveren din med GENDERAPI_API_KEY satt til den eksisterende nøkkelen din. Eksemplet aktiverer vanlig KI-reserve eksplisitt. Det viser hvordan en forespørsel ser ut, ikke en målt prediksjon eller en målt dekning. Bruk options.ai_mode: off hvis du bare vil bruke datasettet.
Velg et programmeringsspråk. Konfigurer API-nøkkelen, og kjør deretter eksemplet på serveren din.
Hver prediksjonsforespørsel er en ny operasjon som belastes, også nye forsøk. Disse eksemplene prøver ikke automatisk på nytt. Sjekk belastningsstatusen før du sender en ny forespørsel.
Før du kjører: tilgang og feilhåndtering
Kjør disse eksemplene på serveren din. Sett GENDERAPI_API_KEY i prosessmiljøet til din eksisterende API-nøkkel. Bekreft at meta.access.mode er api_key: en nøkkel som ikke gjenkjennes, kan føre til IP-prøveperioden.
Ved JSON-svar med HTTP 4xx og 5xx beholdes feilinnholdet, og eksemplet avsluttes med en exit-status som ikke er null. Sjekk code, action og meta.usage.billing_status før du prøver på nytt.
Veiledning om feil og nye forsøk →cURL 7.76+ i et POSIX-skall. Kjør i terminalen. Dokumentasjon for kjøretidsmiljøet
Node.js 22+; innebygd fetch. Lagre som example.mjs og kjør node example.mjs. Dokumentasjon for kjøretidsmiljøet
Python 3.10+; standardbiblioteket. Lagre som example.py og kjør python3 example.py. Dokumentasjon for kjøretidsmiljøet
PHP 8+ med cURL-utvidelsen. Lagre som example.php og kjør php example.php. Dokumentasjon for kjøretidsmiljøet
Java 17+; standard HTTP-klient. Lagre som GenderApiExample.java og kjør java GenderApiExample.java. Dokumentasjon for kjøretidsmiljøet
Konsollapplikasjon i .NET 8+. Bruk som Program.cs i et konsollprosjekt, og kjør deretter dotnet run. Dokumentasjon for kjøretidsmiljøet
Go 1.22+; standardbiblioteket. Lagre som main.go og kjør go run main.go. Dokumentasjon for kjøretidsmiljøet
Lagre resultatet sammen med grunnlaget
En utledet tilknytning er ikke det kjønnet en person selv har oppgitt. Lagre de opprinnelige inndataene, grunnlaget som ble returnert, og det personen selv har oppgitt, hver for seg. Et ukjent resultat er et gyldig resultat og bør ikke bli en gjettet kategori i applikasjonen din.
| Felt | Bruk |
|---|---|
data.gender / data.result_status | Bruk male eller female bare sammen med identified. Ved et ukjent resultat beholder du den opprinnelige JSON-verdien null. |
data.name / data.match | Kontroller det returnerte navnet og den valgte kandidaten. Et treff på en delstreng beviser ikke at inndataene tilhører en person med dette navnet. |
data.confidence / data.confidence_kind | Konfidensen er en verdi fra 0 til 1 eller null. observed_frequency bygger på lagrede frekvenser; model_reported er en verdi fra KI. Evaluer tersklene separat for hver type. |
data.source / data.sample_count | Skill mellom dataset, ai og none. KI-resultater har ingen lagret utvalgsstørrelse. En utvalgsstørrelse er ikke en målt nøyaktighet. |
meta.access.mode | Kontroller at api_key rapporteres i en integrasjon med konto. Nøkler som mangler eller ikke gjenkjennes, kan i stedet bruke den delte IP-prøveperioden. |
meta.usage | Les charged_credits og billing_status. Et vellykket ukjent resultat belastes. Et tapt svar beviser ikke at forespørselen var gratis. |
Bestem når KI skal brukes
forceToGenderize er valgfritt for navn, e-postadresser og brukernavn. Når det er aktivert, utelater du ai_mode eller bruker fallback; off og always kan ikke kombineres med dette alternativet og gir 422. En positiv startsaldo er nok til å starte en forespørsel, selv om den endelige belastningen gjør saldoen negativ.
Kallenavnmodus kan returnere et kjønn sammen med name: null. Den kan også gi et ukjent resultat. Verken vanlig KI-reserve eller tolkning av kallenavn garanterer et riktig svar eller en verdi som ikke er null.
| Alternativ i forespørselen | Virkemåte | Kreditter for et vellykket oppslag |
|---|---|---|
| options.ai_mode: off | Bruker bare datasettet. | 1, også for et ukjent resultat |
| options.ai_mode: fallback | Søker først i datasettet og bruker deretter vanlig KI hvis det ikke returneres et kjønn. Dette er standard for enkeltforespørsler. | 1 totalt, inkludert KI-reserve |
| options.ai_mode: always | Bruker KI direkte. | 2 |
| forceToGenderize: true | Søker først i datasettet og lar deretter KI tolke et personlig kallenavn eller alias, selv uten et ekte fornavn. | 1 for et resultat fra datasettet; 2 totalt hvis KI brukes |
Behandle en navneliste uten å miste konteksten
Bruk POST /api/v2/gender/batch for høyst 50 elementer med en registrert API-nøkkel eller 10 elementer i IP-prøveperioden. Gi hvert element en unik id, og behold den opprinnelige verdien for hver rad. Hvert element kan ha sitt eget land og sine egne KI-regler; utelat country når landet er ukjent.
I motsetning til enkeltforespørsler, der fallback er standard, bruker elementer i en samleforespørsel bare datasettet som standard. Angi options.ai_mode: fallback for hvert element som trenger KI. Kontroller hvert resultat, også etter HTTP 200, behold ukjente resultater, og gå gjennom feil for enkeltelementer og belastningen før du sender på nytt. Hvert vellykket vanlig element koster 1 kreditt; én HTTP-forespørsel med en samleforespørsel er ikke det samme som én kreditt for én prediksjon.
Vit hva du sender
Demoen i sanntid sender verdien du skriver inn, til GenderAPI.io bare når du selv sender den. Hvis KI brukes, overføres type, value og landkonteksten som ble sendt, til tjenesten som er konfigurert for prediksjoner. For en prediksjon som bare bruker datasettet, angir du options.ai_mode: off uten forceToGenderize i integrasjonen din.
Personvernerklæringen, databehandleravtalen og listen over underdatabehandlere beskriver de publiserte vilkårene for behandlingen. Et resultat er en utledet tilknytning, og det en person selv oppgir, har forrang. Ikke bruk det som grunnlag for beslutninger som har store konsekvenser for en person.
Vanlige spørsmål
Godtar V2 arabisk tekst med diakritiske tegn?
V2 godtar navn i Unicode, også arabisk tekst. Normaliseringen i datasettet fjerner vanligvis ikke arabiske vokaltegn, så stavemåter med og uten vokaltegn kan gi ulike treff eller et ukjent resultat.
Fastslår verktøyet nasjonaliteten til en arabisktalende person?
Nei. SA er landkonteksten som er valgt eksplisitt for denne demonstrasjonen. Skriften, en tilknytning til navnet og et returnert landfelt sier ikke noe om nasjonalitet eller bosted.
Er nøyaktigheten målt for hvert arabisk navn?
Denne siden publiserer ingen slik måling. At inndata godtas, lagrede antall og en konfidensverdi er ikke en uavhengig måling av nøyaktigheten. Se metodesiden for grunnlaget som finnes, og for målingene som ennå ikke er publisert.
Belastes et ukjent resultat med kreditter?
Et vellykket ukjent resultat belastes. Vanlig modus med datasettet eller fallback koster 1 kreditt totalt. Med forceToGenderize koster et resultat fra datasettet 1 kreditt, og bruk av KI koster 2 totalt, også når KI gir et ukjent resultat. Feil har egne regler for belastning; kontroller meta.usage.