85
submitted 1 year ago by XioR112@lemmy.ml to c/asklemmy@lemmy.ml

Hi, I'm learing python and I was thinking about createing Lemmy bot.

you are viewing a single comment's thread
view the rest of the comments
[-] lvxferre@lemmy.ml 23 points 1 year ago* (last edited 1 year ago)

I'll reply first on more general grounds. In my opinion, bots...

  • should only reply to posts/comments when explicitly requested to, through a standard approach.
  • should be properly tagged as bots, not just their username but also some interface element. And they should never behave in a way that mimics human beings.
  • should have short, succinct output, that doesn't force other users to scroll past a lot of junk.
  • should only have a descriptive output (it gives you info), not prescriptive (it doesn't tell you what to do).

Now, actually answering your question:

  • a bot that links manga, anime and LN references to MyAnimeList, MangaUpdates etc. pages, like u/Roboragi does in Reddit.
  • an unit conversion bot, like @iorale@lemmy.fmhy.ml said, that also works for cooking units. (Specially when Americans say stuff like "half cup of onions", for me it's the same as "a random amount of onion"). I volunteer myself to help out gathering units for that.
  • a simple Wikipedia link bot, that gives you a short excerpt of the Wikipedia link.
[-] alex@agora.nop.chat 13 points 1 year ago

I was thinking of running an instance which houses just bots. In theory, that'd make it easy to have an easy to remember URL and usernames, like !bgg@bot.pls or something. If I can get a URL that makes sense I might consider something like this. It'd keep it small enough to call, and make sure they're always 100% intentional.

This is mainly because I don't want to be a source of annoyance for anyone, and I've seen too many people annoyed at the "natural response" bots that pop in all the time on reddit.

If they're on their own instance, a whole instance can block that instance if they don't want bots, or block specific bots if they prefer.

[-] lvxferre@lemmy.ml 4 points 1 year ago

Or even better - what if they need to request specific bots? That is: the bot needs human consent to act on first place. That means that bots will be only used if they're clearly useful for the instance, community or the user, not just a "yeah this bot is annoying and adding noise but why bother?"

[-] alex@agora.nop.chat 3 points 1 year ago* (last edited 1 year ago)

I need to do some experiments to find out what happens if a bot is tagged in a community they're not subbed to. It may be that this is exactly what I can do - it'd be a request by a user, then the mod can ban it if they want. I don't know whether I can do something where only a mod can invite, I'll have to see if there's anything that might help there

[-] ShittyKopper 2 points 1 year ago* (last edited 1 year ago)

mastodon already has botsin.space, depending on how well lemmy & masto interoperate (in theory they'll be fine because AP, but these kinda things tend to mess up in practice. lemmy still doesn't do authorized fetch afaik) hosting bots there & calling them from lemmy should work.

[-] alex@agora.nop.chat 1 points 1 year ago

Thanks for the link, looks like they had the same idea.

[-] Evkob@lemmy.ca 1 points 1 year ago

That's actually a really bright idea. Makes bots easier to identify, and easier to avoid if preferred.

[-] lvxferre@lemmy.ml 5 points 1 year ago* (last edited 1 year ago)

...wow.

I just installed it. I was expecting something like "ah, it knows that a cup should be a certain amount of mililitres, but what if I ask it in grams? Then I put "1 cup sugar", "grams"... and it returned 200g. It couldn't find flour so I used butter, 226g. It works!

Checking /usr/share/units/definitions.units, the devs had the insight to add a lot of cooking stuff to it. Also a way to define your own units. The syntax is an arse but I guess that the bot could handle it.

This would be great as the "guts" of a really good conversion bot.

[-] neo@lemmy.comfysnug.space 5 points 1 year ago

r/fanfiction and r/HPfanfiction have a fanfic link summary bot. you do linkffn(STORYID) or linkao3(STORYID) and it posts a summary. was useful.

[-] lvxferre@lemmy.ml 4 points 1 year ago* (last edited 1 year ago)

I would have never guessed how to request the bot, if you didn't show it. That's another reason why I think that there should be a standard way to request bots, it increases discoverability. For contrast, Roboragi:

  • {this} looks for anime
  • looks for manga
  • ]this[ looks for light novel
  • |this| looks for visual novel

You probably wouldn't guess it from the fanfic link summary bot either.

I think that a simple common syntax that could be used is @!bot-name [options] ["]data to process["], at least when users are requesting it regardless of community. It's hard to hit it by accident, but still easy to type, and flexible enough to allow multiple bots to follow it. So for example:

  • @!fanfic-link-bot ao3 STORYID // looks for STORYID in Archive of Our Own
  • @!animanga-bot ln "story name" // looks for a light novel called "story name"
  • @!units-converter-bot grams "five cups of flour" // converts five cups of flour into grams
  • etc.

Then if community moderators are allowed to call bots to perform functions automatically, without the user requesting them, they could also set up synonyms as shorthands. for example people in c/fanfiction could simply type "ffao3 STORYID" instead, less keystrokes for the same result.

[-] neo@lemmy.comfysnug.space 2 points 1 year ago* (last edited 1 year ago)

on r/fanfiction a link to the bot's info is provided on the sidebar:

Want to link a fic in a comment? Use link bot!

https://github.com/FanfictionBot/reddit-ffn-bot/wiki/Usage

But I 100% agree that something more standard would be called for for something more multi-purpose

[-] lvxferre@lemmy.ml 3 points 1 year ago

And you made me realise something: why the hell are the FanfictionBot, roboragi, wiki linking bot and the likes different bots, if they perform the same underlying task (provide link and summary)? We could have one bot to rule them all.

(Sadly I know why. Because Reddit never bothered to provide users with functionality. So they developed this functionality in parallel, wasting their development time with unnecessary redundancy.)

[-] Deebster@beehaw.org 4 points 1 year ago

should only reply to posts/comments when explicitly requested to

I assume you mean somelike like !remindme 4 days but then one of your examples is "half a cup of onions" and I can't see your fictional American thinking to trigger the bot - which means someone would have to reply to that person to request a bot conversion.

Similarly, there's a music IDing bot on reddit that responds to human-language questions like "whats the song" which is 100% ok with me (and the users have always been pleasantly surprised from what I've seen).

[-] fruitywelsh@lemmy.ml 2 points 1 year ago

Tracking upvotes and good not/bad not replies is helpful feed back to, capturing that seem like a good idea

[-] lvxferre@lemmy.ml 2 points 1 year ago

I can’t see your fictional American thinking to trigger the bot - which means someone would have to reply to that person to request a bot conversion.

I think that they would, given enough community encouragement to do so; things like "OP, please add @!cookunitsbot to your post" go a long way. Roboragi in r/manga for example works well in this way.

Alternatively, if my "I think" above is wrong: then "requested" could also include "explicitly set up by the mods", not just "triggered by the user". For me it already solves the main issue, that is bots chasing you across communities to boss you around or vomit trivia.

Similarly, there’s a music IDing bot on reddit that responds to human-language questions like “whats the song” which is 100% ok with me (and the users have always been pleasantly surprised from what I’ve seen).

Frankly I think that having a standard way to request bots is better for everyone (including the bot developers) than having it reply human questions. Even then, as long as it doesn't do this thing outside of its own "turf" (music communities), it should be fine.

this post was submitted on 08 Jun 2023
85 points (100.0% liked)

Asklemmy

43893 readers
722 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy 🔍

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~

founded 5 years ago
MODERATORS