In the last few days, I have some experiments with traditional #MachineLearning algorithms for toxicity classification. Instead of using GPU, the trained model can be utilized only using CPU with fast performance (milliseconds). Good news for those who can't afford GPU.
The performance result is satisfactory and comparable to top state of the art model such as "detoxify/unbiased-small" model. This model will be included for #NostrFilterRelay module https://nostrcheck.me/media/2b67e480b7f99d2835684a8f7276d86edbe8e318ea55cf77ccfd559c5f24f645/d8a67688414deaccc639628633a2c5793cf96949dc16301e113e9678172d889a.webp next update.
Update:
Jupyter Notebook example for training has been merged in main branch including pre-trained model. The model will be integrated into API as additional option in the next update.
Release 1.3.0 nostr-php helper library
https://github.com/nostrver-se/nostr-php/releases/tag/1.3.0
Extending NIP-01 with fetching events from relays.
Initial code PR submitted by nostr:npub1ap9fscjl92zclacmaa0nneurr5js85ymuem6ew0ftu8f6eztvpds8qchga ๐ All zaps on this note will go to him!
Also a huge shoutout to nostr:npub10pensatlcfwktnvjjw2dtem38n6rvw8g6fv73h84cuacxn4c28eqyfn34f for giving me the opportunity to work on the further development of this library ๐ซก
#PHP #NostrPHP
Awesome, thank you for the works ๐
Look between both eyes in the middle
> since keeping the notes in the ram is getting costlier, i want to divide nos.lol into two.
Oh, did you set "noReadAhead = false" in lol and mom strfry.conf? I have change it to "true" since my relay database has already bigger than server RAM ๐
What I did as trick to keep some events fresh in memory cache was running cron script that fetch events every hour:
nosdump --kinds 0,1,6,7,9735 --since 24h ws://172.17.0.100:7777 > /dev/null 2>&1
It will force/trick strfry and makes 24 hour last common events fresh in it's memory cache.
> i need a proxy that does this:
I think the one that probably fulfill some of your requirements is bostr proxy relay. It can read from multiple relays. I'm not sure if it can be set to write only 1 relay but read from 2 relays like you said. If not then you need to modify it a little bit.
https://github.com/yonle/bostr
Unfortunately, the proxy relay I'm using currently only support in one server as it has already fulfill my requirements for now. I think I will also probably implement that in future.
Yes, wss://nfrelay.app (demo relay) has been connected to major relays (20+) including nos.lol, nostr.mom, nostr.band
Yes, currently the code were implemented by looking image url file in notes text -> temporary download -> preprocess/resize image -> classify image using tensorflow pretrained model. Quite exhausting to process all notes ๐
Oh, thank you, if you don't mind to share it by DM. Agree with that, especially for the spammers abuse. I use regex filter and anti duplication policy for spam management.
Yes I have run custom aggregator relay with filter parameters/settings (like filter.nostr.wine )
This is the package code for my relay
https://github.com/atrifat/nostr-filter-relay
which needs several separated modules (Language detection, SFW detection, Toxicity/hate speech detection) listed as its dependencies. All modules can be run using CPU.
Are you Indonesian? Mas Fabian? ๐
Kalau benar, Cc nostr:npub1cdak4q4f3h3k3sgyh0rd5dj4w8k95f3mquzh6z3ew76vqkh60e3slyczgz Nostur klien Nostr buatan anak bangsa ๐ซก
Interesting. What is your LLM prompt to achieve that?
Have you tried using text transformer embedding model and use vector distance to measure similarity for spam rate limit?
In the last few days, I have some experiments with traditional #MachineLearning algorithms for toxicity classification. Instead of using GPU, the trained model can be utilized only using CPU with fast performance (milliseconds). Good news for those who can't afford GPU.
The performance result is satisfactory and comparable to top state of the art model such as "detoxify/unbiased-small" model. This model will be included for #NostrFilterRelay module https://nostrcheck.me/media/2b67e480b7f99d2835684a8f7276d86edbe8e318ea55cf77ccfd559c5f24f645/d8a67688414deaccc639628633a2c5793cf96949dc16301e113e9678172d889a.webp next update.
To those who want early sneak peek ๐
https://github.com/atrifat/hate-speech-detector-api/tree/wip-train-traditional-ml
Full training code will be pushed in main branch soon.
In the last few days, I have some experiments with traditional #MachineLearning algorithms for toxicity classification. Instead of using GPU, the trained model can be utilized only using CPU with fast performance (milliseconds). Good news for those who can't afford GPU.
The performance result is satisfactory and comparable to top state of the art model such as "detoxify/unbiased-small" model. This model will be included for #NostrFilterRelay module https://nostrcheck.me/media/2b67e480b7f99d2835684a8f7276d86edbe8e318ea55cf77ccfd559c5f24f645/d8a67688414deaccc639628633a2c5793cf96949dc16301e113e9678172d889a.webp next update.
A hidden gem in this season. It brings variety of emotions within and makes us realize how meaningful to spend our time with loved ones.
ใใใใใฐใใใ่ฅ่ฟใ - Grandpa and Grandma Turn Young Again
#anime
Well, it took half of them in the past before using aggregator relay ๐
Tri (Indosat Hutchison) say hello with their discount package - $10 for 135GB
The cheapest mobile data package I can found in our country, really love them ๐
Let me know if you're having some errors or problems using it in Damus. I haven't enough tester in Damus ๐
Maybe, you can probably try using
wss://nfrelay.app
as global feed relay
It can help most of the times when visiting global feed ๐ซ
I think this one, only short version though around 0:19
nostr:nevent1qqs93zajuc50vfyukz344t9wpxfutrrm3awyg0rvmasr374hne8gftsfyx2vj
this is best version of this song! ๐ https://video.twimg.com/ext_tw_video/1802988632107892736/pu/vid/avc1/720x1280/2NFa3JKsJsSxebfD.mp4
Aunty ๐
I laugh more with her "Romeo take me ..." version ๐
Did you play around with Intel NPU? What is your experience Mattn-san? ๐
Amethyst, 0xChat, Coracle (not sure). Maybe I'm still missing other clients.
