Onderscheid maken tussen Unicode-invoer en het splitsen van volledige namen
U kunt een Chinese naam als Unicode-tekst versturen zonder die eerst naar het Latijnse schrift om te zetten. De huidige zoekopdracht controleert genormaliseerde delen; een volledige Chinese naam zonder spaties wordt niet automatisch gesplitst in achternaam en voornaam. 王静怡 is dus één kandidaat en geen gegarandeerde zoekopdracht naar 静怡.
Voor de gangbare Chinese tekens in de voorbeelden slaat het huidige kandidatenfilter van de dataset delen van één of twee tekens over. Een korte voornaam kan geldige invoer zijn en toch geen kandidaat opleveren. De normale AI-fallback kan de oorspronkelijk verstuurde waarde nog wel interpreteren; een verzoek dat alleen de dataset gebruikt, houdt het resultaat onbekend.
Unicode-normalisatie NFKC biedt geen algemene omzetting tussen vereenvoudigd en traditioneel Chinees en herleidt een Latijnse spelling niet tot één oorspronkelijke Chinese naam. Bewaar de verstuurde spelling en controleer de teruggegeven match. De positie van de achternaam, het schrift of de romanisering is niet genoeg om conclusies te trekken over het geslacht of het land van een persoon.
| Voorbeeldinvoer | Wat het voorstelt | Wat u controleert |
|---|---|---|
王静怡 | Volledige naam zonder spaties | Eén kandidaat in de dataset. De huidige analyse splitst de achternaam niet af. |
静怡 | Voornaam van twee tekens | Wordt overgeslagen door de lengtegrens van het kandidatenfilter; de AI-fallback kan de oorspronkelijke waarde interpreteren. |
王 静怡 | Afzonderlijke korte delen | Een extra spatie omzeilt de lengtegrens niet. Beide delen in het voorbeeld zijn te kort voor de zoekopdracht in de dataset. |
Wang Jingyi | Invoer in Latijns schrift | Wordt als aparte waarde behandeld en in eigen delen gesplitst. Het is niet gegarandeerd dat deze naar de oorspronkelijke tekens of hetzelfde item wordt herleid. |
De landcontext CN bewust kiezen
De live demo verstuurt country: CN (China). De API kiest dit land niet op basis van het schrift waarin de naam is geschreven. Gebruik in uw integratie bekende, relevante landcontext of laat country weg. Maak van deze voorbeeldwaarde geen standaardwaarde voor alle records.
Per kandidaat kiest de zoekopdracht het landspecifieke item als dat bestaat en anders het globale item. Daarna wordt de beschikbare kandidaat met de hoogste opgeslagen totale telling gekozen. Het werkelijke bereik van de match staat in data.match.scope en data.match.country. Een landspecifiek item met gelijke frequenties wordt niet automatisch vervangen door het globale resultaat; als de fallback actief is, kan in plaats daarvan AI worden gebruikt.
data.input.country beschrijft de landcontext die in het verzoek is verstuurd. data.country en data.country_source beschrijven de teruggegeven koppeling met een land en de herkomst daarvan. Dit zijn verschillende velden en ze zeggen niets over nationaliteit, etnische afkomst of woonplaats.
Een V2-verzoek voor een naam versturen vanuit uw applicatie
Stel GENDERAPI_API_KEY in op uw bestaande sleutel en voer het voorbeeld uit op uw server. Het verzoek schakelt de normale AI-fallback expliciet in. Het laat de opbouw van het verzoek zien, geen gemeten nauwkeurigheid of bevestigde dekking. Stel voor een voorspelling die alleen de dataset gebruikt options.ai_mode: off in.
Kies een programmeertaal. Stel uw API-sleutel in, voer daarna het voorbeeld uit op uw server.
Elk voorspellingsverzoek is een nieuwe betaalde bewerking, ook als het een nieuwe poging is. Deze voorbeelden proberen het niet automatisch opnieuw. Controleer de afschrijvingsstatus voordat u een nieuw verzoek verstuurt.
Voordat u het uitvoert: toegang en foutafhandeling
Voer deze voorbeelden uit op uw server. Stel in de procesomgeving GENDERAPI_API_KEY in op uw bestaande API-sleutel. Controleer of meta.access.mode api_key is: een niet-herkende sleutel kan terugvallen op de IP-proefperiode.
Bij JSON-antwoorden met HTTP 4xx en 5xx blijft de body van de fout behouden en eindigt het voorbeeld met een afsluitcode die niet nul is. Controleer code, action en meta.usage.billing_status voordat u het opnieuw probeert.
Handleiding voor fouten en nieuwe pogingen →cURL 7.76+ in een POSIX-shell. Voer uit in uw terminal. Documentatie van de runtime
Node.js 22+; ingebouwde fetch. Sla op als example.mjs en voer node example.mjs uit. Documentatie van de runtime
Python 3.10+; standaardbibliotheek. Sla op als example.py en voer python3 example.py uit. Documentatie van de runtime
PHP 8+ met de cURL-extensie. Sla op als example.php en voer php example.php uit. Documentatie van de runtime
Java 17+; standaard HTTP-client. Sla op als GenderApiExample.java en voer java GenderApiExample.java uit. Documentatie van de runtime
.NET 8+-consoleapplicatie. Gebruik als Program.cs in een consoleproject en voer daarna dotnet run uit. Documentatie van de runtime
Go 1.22+; standaardbibliotheek. Sla op als main.go en voer go run main.go uit. Documentatie van de runtime
Het resultaat samen met het bewijs opslaan
Een afgeleide koppeling is niet het geslacht dat iemand zelf opgeeft. Sla de oorspronkelijke invoer, het teruggegeven bewijs en wat de persoon zelf heeft opgegeven apart op. Een onbekend resultaat is een geldig resultaat en mag in uw applicatie geen geraden categorie worden.
| Veld | Gebruik |
|---|---|
data.gender / data.result_status | Gebruik male of female alleen bij identified. Bewaar bij een onbekend resultaat de oorspronkelijke JSON-waarde null. |
data.name / data.match | Controleer de teruggegeven naam en de geselecteerde kandidaat. Een match op een deel van de tekenreeks bewijst niet dat de invoer bij een persoon met die naam hoort. |
data.confidence / data.confidence_kind | De betrouwbaarheidsscore staat op een schaal van 0 tot 1 of is null. observed_frequency is gebaseerd op opgeslagen frequenties; model_reported is een waarde die AI opgeeft. Evalueer drempels per soort afzonderlijk. |
data.source / data.sample_count | Maak onderscheid tussen dataset, ai en none. AI-resultaten hebben geen opgeslagen steekproefgrootte. Een steekproefgrootte is geen gemeten nauwkeurigheid. |
meta.access.mode | Controleer bij een integratie met een account of api_key wordt vermeld. Ontbrekende of niet-herkende sleutels kunnen anders de gedeelde IP-proefperiode gebruiken. |
meta.usage | Lees charged_credits en billing_status. Een geslaagd onbekend resultaat wordt afgeschreven. Een verloren antwoord bewijst niet dat het verzoek gratis was. |
Bepalen wanneer u AI gebruikt
forceToGenderize is optioneel voor namen, e-mailadressen en gebruikersnamen. Als het is ingeschakeld, laat ai_mode dan weg of gebruik fallback; off en always kunnen niet met deze optie worden gecombineerd en geven 422 terug. Een positief beginsaldo is genoeg om een verzoek te starten, ook als de uiteindelijke afschrijving het saldo negatief maakt.
De bijnaammodus kan een geslacht teruggeven samen met name: null. Ook een onbekend resultaat is mogelijk. Noch de normale AI-fallback noch de bijnaaminterpretatie garandeert een juist antwoord of een waarde anders dan null.
| Optie in het verzoek | Werking | Credits per geslaagde zoekopdracht |
|---|---|---|
| options.ai_mode: off | Gebruikt alleen de dataset. | 1, ook bij een onbekend resultaat |
| options.ai_mode: fallback | Raadpleegt eerst de dataset en gebruikt daarna de normale AI als er geen geslacht wordt teruggegeven. Dit is de standaardwaarde voor losse verzoeken. | In totaal 1, inclusief AI-fallback |
| options.ai_mode: always | Gebruikt direct AI. | 2 |
| forceToGenderize: true | Raadpleegt eerst de dataset en laat daarna AI een persoonlijke bijnaam of alias interpreteren, ook zonder echte voornaam. | 1 voor een resultaat uit de dataset; in totaal 2 als AI wordt gebruikt |
Een lijst met namen verwerken zonder de context te verliezen
Verstuur maximaal 50 items met een API-sleutel of 10 met de IP-proefperiode via POST /api/v2/gender/batch. Geef elk item een unieke id en bewaar de oorspronkelijke waarde van elke rij. Elk item kan eigen opties voor land en AI hebben; laat het land weg als het niet bekend is.
Anders dan losse verzoeken, die standaard de fallback gebruiken, gebruiken items in een batch standaard alleen de dataset. Stel options.ai_mode: fallback in voor elk item dat AI nodig heeft. Controleer elk resultaat, ook na HTTP 200, bewaar onbekende resultaten en controleer fouten en de afschrijving voordat u opnieuw verstuurt. Elk geslaagd normaal item kost 1 credit; één HTTP-verzoek voor een batch staat niet gelijk aan één credit per voorspelling.
Weten wat u verstuurt
De live demo verstuurt de ingevoerde waarde pas naar GenderAPI.io wanneer u die zelf verstuurt. Als AI wordt gebruikt, worden type, value en de verstuurde landcontext doorgegeven aan de dienst die voor voorspellingen is geconfigureerd. Stel voor een voorspelling die alleen de dataset gebruikt in uw integratie options.ai_mode: off in zonder forceToGenderize.
Het privacybeleid, de verwerkersovereenkomst en de lijst met subverwerkers beschrijven de gepubliceerde voorwaarden voor de verwerking. Een resultaat is een afgeleide koppeling en wat iemand zelf opgeeft, gaat altijd voor. Gebruik het niet als basis voor beslissingen met belangrijke gevolgen voor een persoon.
Veelgestelde vragen
Waarom kan een Chinese voornaam van twee tekens onbekend blijven als alleen de dataset wordt gebruikt?
Het huidige kandidatenfilter slaat delen over waarvan de lengte als JavaScript-tekenreeks maximaal twee is. Voor de Chinese tekens die hier worden getoond, is een voornaam van twee tekens geldige invoer, maar wordt deze geen kandidaat in de dataset. De AI-fallback kan de oorspronkelijke waarde interpreteren.
Splitst V2 de Chinese achternaam automatisch van de voornaam?
De zoekopdracht in de dataset splitst een volledige Chinese naam zonder spaties niet. AI kan uit de hele waarde een voornaam afleiden, maar geen van beide wegen garandeert dat de bedoelde voornaam wordt gekozen. Controleer source en match in het antwoord.
Is er voor deze groep namen een onafhankelijke evaluatie van de nauwkeurigheid gepubliceerd?
Deze pagina publiceert zo'n evaluatie niet. Het accepteren van invoer, het tonen van opgeslagen frequenties of het teruggeven van een betrouwbaarheidsscore is geen onafhankelijke meting van de nauwkeurigheid. De methodologie beschrijft welke gegevens beschikbaar zijn en welke metingen nog niet zijn gepubliceerd.
Kost een resultaat zonder voorspelling credits?
Een geslaagd onbekend resultaat wordt afgeschreven. De normale modus met de dataset of met de fallback kost in totaal 1 credit. Met forceToGenderize kost het verzoek 1 credit als het resultaat uit de dataset komt, of in totaal 2 als AI wordt gebruikt, ook bij een onbekend resultaat. Voor fouten gelden aparte afschrijvingsregels; controleer meta.usage.