Thank you. I'm glad that it can be understood. I think i really need to improve documentation in Github to make it easier. š
> How did you get the content warning showing in Amethyst? Did that note just happen to already have a content warning on it?
Oh no, i was intentionally made that post marked by using NIP-36 directly on Amethyst. What i have test was how my nostr-filter-relay test relay (wss://nostr-id-test-relay.hf.space) will react if i posted that negative comment. It works correctly by excluding those event. It will be merged soon into main relay (wss://nostr-id-relay.hf.space).
> https://github.com/rabble/nips/blob/724e05e762a634e501bdcf6cbefaa91f99b1903b/69.md
It is nice NIPs proposal to have list of ontology for labelling. I'm confused a bit since this PR seems to be cancelled because NIP-32 has been merged and superseded it, right? Also what is the source or reference to determine those ontology structure (IH, IL, NA, NS, etc.)?
Actually, i have already made considerations to transform current data format (kind: 9978) into NIP-32 format https://github.com/atrifat/nostr-monitoring-tool/issues/1 . Maybe i will do that after finishing other planned features (sentiment analysis and topic classification).
Currently, this is data format used by nostr-filter-relay internally. Data in "content" field (JSON stringified) were used in nostr-filter to determine the filtering. I think i need to format this in more efficient structure into NIP-32 compatible format. š
Example of language classification data:
{
"content": "[{\"confidence\":82,\"language\":\"ja\"}]",
"created_at": 1700614355,
"id": "event_id",
"kind": 9978,
"pubkey": "pubkey_of_classifier_bot",
"sig": "signature",
"tags": [
[
"d",
"nostr-language-classification"
],
[
"t",
"nostr-language-classification"
],
[
"e",
"75316bf6db0c75f8e57d2f3a2044d6eadacac92bfda780c62a89d5c47725fbe1"
],
[
"p",
"34a85403b43ff13441c7d79c98ba0f036add04b084b24f91c10d643f6d3f3665"
]
]
}
Example of hate speech (toxic comment) classification data:
{
"content": "{\"identity_attack\":0.6200000047683716,\"insult\":0.4620000123977661,\"obscene\":0.010999999940395355,\"severe_toxicity\":0,\"sexual_explicit\":0.0020000000949949026,\"threat\":0.004999999888241291,\"toxicity\":0.8059999942779541}",
"created_at": 1700000000,
"id": "event_id",
"kind": 9978,
"pubkey": "pubkey_of_classifier_bot",
"sig": "signature",
"tags": [
[
"d",
"nostr-hate-speech-classification"
],
[
"t",
"nostr-hate-speech-classification"
],
[
"e",
"c86cf6f0f7a30adfbd231d0e6d7b48c6d8909dd06bbcde9dd62a05f5ced072b5"
],
[
"p",
"dc369036ad76c7fe51b381ace9569e7add87c03dc74d9ab73b7e3299c18fe1c2"
]
]
}
Example of SFW/NSFW classification data:
{
"id": "event_id",
"created_at": 1696817846,
"kind": 9978,
"pubkey": "pubkey_of_classifier_bot",
"sig": "signature",
"content": "[{\"id\":\"58bd02d8c46eaa6f1598d5eff7cb33c06ff57c4c9ad3dad32ae2b70d3258f661\",\"author\":\"5fd004926969381ac2bb3a32720036d9f9632d29fb22dc1bf5d8fb1c9e265798\",\"is_activitypub_user\":false,\"has_content_warning\":false,\"has_nsfw_hashtag\":false,\"probably_nsfw\":false,\"high_probably_nsfw\":false,\"responsible_nsfw\":true,\"data\":{\"hentai\":0.0000018745902252703672,\"neutral\":0.9998550415039062,\"pornography\":0.0000746770019759424,\"sexy\":0.00006828152254456654,\"predictedLabel\":\"neutral\"},\"url\":\"url\"}]",
"tags": [
[
"d",
"nostr-nsfw-classification"
],
[
"t",
"nostr-nsfw-classification"
],
[
"e",
"58bd02d8c46eaa6f1598d5eff7cb33c06ff57c4c9ad3dad32ae2b70d3258f661"
],
[
"p",
"5fd004926969381ac2bb3a32720036d9f9632d29fb22dc1bf5d8fb1c9e265798"
]
]
}