JanitorAI Guides

JanitorAI Guides

433

4.6k

JanitorAI Tutorial for Dummies and Beginners

and a Writing Assistant Bot πŸ‡

Last Updated: Sep 23, 2025


.

.

These are a compilation of my discoveries in using JanitorAI.

TOC:

  • Setting up interaction using JLLM.

  • Setting up interaction using Other LLMs (Deepseek, Llama, etc.).

  • General Settings for Any LLMs.

  • System Prompts

  • Which one of the LLMs I should choose?

  • Creating bots.

  • Tutorial using this "Writing Assistant" bot.

  • Editing your profile.

β€’

β€’





.

.

~ Disclaimer ~

At the moment, Janitor has provided their own guide, which you can check out here.

However, I won't delete this guide and will likely keep it as my personal space to write down my tips and insights on using Janitor.

You might find some different information in this guide compared to that one, but keep in mind that what I writing here is what I think works best for me.

So keep reading if you want to know about my tips and tricks for using Janitor... (⁠◠⁠‿⁠・⁠)β β€”β β˜†

.

⋆。 ̊☽ ΜŠγ€‚β‹†γ€‚ ̊☾ ΜŠγ€‚β‹†γ€‚ ΜŠβ€ ΜŠγ€‚β‹†γ€‚ ̊☽ ΜŠγ€‚β‹†γ€‚ ̊☾ ΜŠγ€‚β‹†

.

.

.

.





How to Set Up Interaction Using JLLM

For beginner, you should try this LLM from Janitor. It has its pros and cons, but it's worth a try, and it's free. Here's a quick rundown of the setup:

β€’



SETTING WITHIN CHAT

.

β€’> API Settings

>> Open your Janitor chat → click one chat from whichever bot→ click the "three lines" on the right corner → {API Settings} → {JanitorLLM Beta}

"JanitorLLM Beta" is the default LLM for Janitor AI. Then, click the {Advanced Prompts}. For the prompts that I use, see the System Prompts section!

β€’

β€’





How to Set Up Interaction Using Other LLMs (Deepseek, Llama, etc)

In this section I'll tell you how to set other LLMs in free way. If you wanted to know the detailed explanation why you should try other LLMs than JLLM, read these: Deepseek Guide bot, and molek.

And yeah, let's just cut to the steps! Here is the guide to set it up:

β€’



GETTING YOUR API KEY

Before you can set the new LLM Models in you Janitor chat setting, you should get your API Key first. There are many methods for it, I'll tell you some:

.


β€’> API Key via Chutes AI

This method no longer offers free usage, only a paid option. They offer a one-time payment method, so you don't have to subscribe, but it will become your Chute balance, ranging from $5 to $100. From the information I have, if you add at least $5 to your Chute balance, you'll get 200 free daily messages.(Though I haven't found a definitive source to confirm this)

They accepted Credit cards and Tao as their payment methods. (Truthfully, I also don't know what Tao currency is.)

(If you still want to see the steps to setting up LLMs using Chutes, see my archive page.)

.


β€’> API Key from Open Router

Open Router offers you 50 free daily messages for their free LLM versions.

Now, let's look at the steps to getting an API Key from Open Router. Although you can find this guide on YouTube, I'll still provide the steps here:

>> Open Open Router, then sign in using your Google account. After you log in, click on "your profile picture" in the top right corner of the page β†’ click {Settings} in the pop up β†’ click {: Sections} β†’ click {API Keys} β†’ click {Create API Key} β†’ after the new pop up appeared, fill the {Name} with your desired one β†’ click {Create} β†’ You get your API Key. To copy it, click the small "copy" logo beside the code.

Make sure to save it in a safe place, and if possible, in a synced notepad, so that you can access the key from various devices and copy it immediately when using Proxy in Janitor.

Open Router offer many LLM models, and if you want to try the paid version of some LLMs, they accept many payment options. These include: Credit cards, Bank transfers, Cash App Pay, AliPay, WeChat Pay, and Cryptocurrency payments in USDC.

If you think 50 free daily messages aren't enough for your roleplay, you might want to consider paying for their service. Here are the steps: Click {: Section}β†’{Credits}β†’ {Add Credits}β†’turn on the toggle for {Use one-time payment methods} (that means you only need to pay once, without a subscription.) In the amount, you'll see $10, and actually, it can be adjusted to $5-$25,000. However, if you add at least $10 to your open router credits, your 50 free daily messages will be increased to 1,000 free daily messages! See the source here. I've tested it out, and it worked!

.


β€’> API Key from Official Deepseek

If you're a number one fan of Deepseek, you might want to try the official version from their website. However, they don't offer a free trial, but their prices are cheaper than Open Router for the Deepseek paid versions.

You can make a one-time payment without a subscription, ranging from $2 to $500. And they accepted Credit Cards and PayPal as their payment methods.

For more information on how to set it up and other details, you should read this!

.


β€’> What source should I use to get my API key?

Okay, so far those three are the sources I know. Although there are more sources where you can get your API key, let's just focus on these three.

If you are looking for the free version, only Open Router offers that. (50 free daily messages without needing to pay!)

But if you're deciding which one of the three to choose for the paid version, it depends on how much you're willing to pay, the payment methods they accept that you can use, and which LLM models you want to use.

Considering the minimum amount you at least need to pay: "Official Deepseek" ($2) > "Chutes" ($5) > "Open Router" ($10).

Considering the number of payment methods they accept: "Open Router" > "Official Deepseek" > "Chutes"

Considering the number of LLM models they offered: "Open Router" > "Chutes" > "Official Deepseek"

For me, I choose Open Router. Why?

(WARNING! The section below is filled with my yapping, and you can skip to the next part of this guide if you prefer. However, if you choose to read it, please don't be mad at me, as it'll be quite lengthy and filled with my personal experiences that I want to share with you.)

Yes, the minimum amount needed from Open Router (that offer the bonus) is $10, which is higher than other options. However, with this $10, if you're using the free models, you can get 1,000 free daily messages. It might even feel like you can use it as much as you want, since 1,000 messages per day is a lot! It's so economical that you don't have to worry about your balance.

Open Router also offers more payment methods than other options, so anyone from anywhere can use it, as long as they have a bank account. For example, I don't have credit cards, and my country's currency is not supported by PayPal. (I'll be honest, I'm from Indonesia, and it's so hard to find multinational payment services here that support our currency.) But Open Router accepts cryptocurrency, and after I asked ChatGPT, I found out it's possible to pay with my country's currency using my local bank account in a secure and trusted way. I won't type the steps here, as they are Too Damn Long! For me, I just tried doing the process anyway, and ChatGPT was very helpful for me. Whenever I felt stuck, I would take a screenshot, then send and ask ChatGPT for the next steps, and it would guide me to the supposed next steps.(Just make sure you don't share your crucial information in your screenshot–like your passwords, ID card number, or bank account number. If you do so, everything is okay and secure.)

Why did I choose the paid option when they offer free daily messages even if I don't pay? From my experience, when I used their service for free, I did receive free daily messages. However, I tended to get a notif saying I had reached the limit, even though when I checked my usage on the Open Router site, I hadn't hit the total of 50 requests in a day. (I'm not sure why this can happen.) I'm not patient enough to wait for the next day, as I don't engage in roleplay every day, so this limit restricts me. That's why I chose to pay, and it's worth it.

What I love about using LLMs from Open Router is that the "think" part, which is the reasoning process of certain LLMs, like in Deepseek R1-0528, is hidden. (I'm not sure if using Deepseek R1 from the official Deepseek will work the same or not, but when using it from Chutes, the thought process is displayed.)

β€’



SETTING WITHIN CHAT

Here, I'll show you the steps for setting up LLMs using Open Router, and I'll also provide a list of the free versions of some LLMs that Open Router offers.

After you get the API key, here are the instructions to set up the models in Janitor:

.

β€’> API Settings

>> Open your Janitor chat → click one chat from whichever bot→ click the "three lines" on the right corner → {API Settings} → {Proxy} → {+ Add Configuration}

.

>> Follow these to fill the columns:

- {Configuration Name}: (type any name you want)

- {Model Name}: (You can see the models on the Open Router site: click "your photo profile"β†’ {Models} β†’ type "free" in search β†’ select one from the list offered ...

... Or you could see my list bellow)

.


NOTE:

-

βœ”οΈ = I RECOMMEND!

〰️ = Not that good, not that bad.

βœ–οΈ = Not recommended

-

πŸ”₯ = Support uncensored by default

πŸ™ˆ = Not supported uncensored by default

-

🟑 = The provider May use your data to train new models.

🟒 = The provider Doesn't use your data to train new models.

-

β–ͺ️ = Unknown yet

-


.

  • [Looks: Displays <think>]

    • tngtech/deepseek-r1t-chimera:free βœ”οΈπŸ”₯🟑,

    • openai/gpt-oss-20b:free 〰️πŸ”₯🟒

    • qwen/qwen3-235b-a22b:free 〰️πŸ”₯🟒

    • moonshotai/kimi-vl-a3b-thinking:free βœ–οΈπŸ”₯🟑

      .

  • [Looks: Clean, displays only chat]

    • deepseek/deepseek-r1-0528:free βœ”οΈπŸ”₯🟑,

    • deepseek/deepseek-chat-v3.1:free βœ”οΈπŸ”₯🟒,

    • deepseek/deepseek-r1:free βœ”οΈπŸ”₯🟑,

    • deepseek/deepseek-chat-v3-0324:free βœ”οΈπŸ”₯🟑,

    • tngtech/deepseek-r1t2-chimera:free βœ”οΈπŸ”₯🟑,

    • deepseek/deepseek-r1-distill-llama-70b:free γ€°οΈπŸ™ˆπŸŸ’,

    • deepseek/deepseek-r1-0528-qwen3-8b:free 〰️πŸ”₯🟑

    • deepseek/deepseek-r1-distill-qwen-14b:free β–ͺ️ β–ͺ️ 🟑

      .

    • microsoft/mai-ds-r1:free βœ”οΈπŸ”₯🟑,

      .

    • x-ai/grok-4-fast:free βœ”οΈπŸ”₯🟑,

      .

    • z-ai/glm-4.5-air:free βœ”οΈπŸ”₯🟒,

      .

    • meta-llama/llama-4-maverick:free βœ”οΈπŸ”₯🟒,

    • meta-llama/llama-4-scout:free βœ”οΈπŸ”₯🟒,

    • meta-llama/llama-3.3-70b-instruct:free βœ”οΈπŸ”₯🟒,

    • shisa-ai/shisa-v2-llama3.3-70b:free βœ”οΈπŸ”₯🟑,

    • meta-llama/llama-3.1-405b-instruct:free 〰️πŸ”₯🟒

    • meta-llama/llama-3.3-8b-instruct:free 〰️πŸ”₯🟒

    • nousresearch/deephermes-3-llama-3-8b-preview:free 〰️πŸ”₯🟑

    • meta-llama/llama-3.2-3b-instruct:free βœ–οΈπŸ”₯🟒

    • nvidia/llama-3.1-nemotron-ultra-253b-v1:free β–ͺ️ β–ͺ️ 🟑

      .

    • mistralai/mistral-small-3.1-24b-instruct:free βœ”οΈπŸ”₯🟒,

    • mistralai/mistral-small-3.2-24b-instruct:free βœ”οΈπŸ”₯🟑

    • mistralai/mistral-nemo:free βœ”οΈπŸ”₯🟑

    • mistralai/mistral-small-24b-instruct-2501:free βœ”οΈπŸ”₯🟑

    • mistralai/mistral-7b-instruct:free 〰️πŸ”₯🟒

    • mistralai/devstral-small-2505:free 〰️πŸ”₯🟑

      .

    • google/gemini-2.0-flash-exp:free βœ”οΈπŸ”₯🟑,

    • google/gemini-2.5-flash-image-preview:free 〰️πŸ”₯🟑,

      .

    • qwen/qwen2.5-vl-32b-instruct:free βœ”οΈπŸ”₯🟒,

    • qwen/qwen3-30b-a3b:free 〰️πŸ”₯🟑

    • qwen/qwen3-8b:free 〰️πŸ”₯🟑

    • qwen/qwen-2.5-72b-instruct:free 〰️πŸ”₯🟑

    • arliai/qwq-32b-arliai-rpr-v1:free 〰️πŸ”₯🟑

    • qwen/qwen3-4b:free βœ–οΈπŸ”₯🟒

    • qwen/qwen-2.5-coder-32b-instruct:free βœ–οΈπŸ”₯🟒

    • qwen/qwen3-14b:free βœ–οΈπŸ”₯🟑

    • qwen/qwen2.5-vl-72b-instruct:free γ€°οΈπŸ™ˆπŸŸ’

    • qwen/qwen3-coder:free βœ”οΈβ–ͺ️ 🟑,

    • qwen/qwq-32b:free β–ͺ️ β–ͺ️ 🟒

      .

    • moonshotai/kimi-dev-72b:free βœ”οΈπŸ”₯🟑,

    • moonshotai/kimi-k2:free βœ”οΈπŸ™ˆπŸŸ‘,

      .

    • cognitivecomputations/dolphin-mistral-24b-venice-edition:free βœ”οΈπŸ”₯🟒,

    • cognitivecomputations/dolphin3.0-mistral-24b:free 〰️πŸ”₯🟑

    • cognitivecomputations/dolphin3.0-r1-mistral-24b:free 〰️πŸ”₯🟑

      .

    • agentica-org/deepcoder-14b-preview:free γ€°οΈπŸ™ˆ 🟑

      .

    • tencent/hunyuan-a13b-instruct:free βœ–οΈπŸ”₯🟑

      .

    • google/gemma-3-27b-it:free γ€°οΈπŸ™ˆπŸŸ‘,

    • google/gemma-3-12b-it:free βœ–οΈ πŸ™ˆπŸŸ‘

    • google/gemma-2-9b-it:free βœ–οΈπŸ™ˆπŸŸ‘

    • google/gemma-3-4b-it:free β–ͺ️ β–ͺ️ 🟑

    • google/gemma-3n-e4b-it:free β–ͺ️ β–ͺ️ 🟑

    • google/gemma-3n-e2b-it:free β–ͺ️ β–ͺ️ 🟑

      .

    • sarvamai/sarvam-m:free β–ͺ️ β–ͺ️ 🟑

      .

    • rekaai/reka-flash-3:free β–ͺ️ β–ͺ️ 🟑

      .

- {Proxy URL}:

https://openrouter.ai/api/v1/chat/completions

- {API Key}: (your API Key that you get before)

- {Custom Prompts}: For the prompts that I use, see the System Prompts section!

.

>> Click {Add Configuration} β†’ inside your newly added configuration, click {Test} β†’ {Save Settings} β†’ refresh your browser.

β€’



TIPS FOR SOLVING ERRORS

Here, I'll provide you some error codes from Open Routes models, including their definitions and how to solve them.

Sources: [1], [2],

.

400

🟰 Bad Request (invalid or missing params, CORS)

.

401

🟰 Invalid credentials (OAuth session expired, disabled/invalid API key)

πŸ”§ Make sure you copy your API key correctly.

.

402

🟰 Your account or API key has insufficient credits.

πŸ”§ Add more credits and retry the request.

.

403

🟰 Your chosen model requires moderation and your input was flagged.

.

404

🟰 No endpoints found for your chosen model.

⚑ Your chosen model is invalid or no longer valid.

πŸ”§ Change to another model.

.

🟰 No endpoints for your chosen model found matching your data policy (Training).

⚑ They need your consent to use your data for model training. To our knowledge, some providers may use your prompts and completions to train new models, for example, Chutes (see other providers for their data policies here), and most free-tier models on Open Router are provided by Chutes. If you still want to use the model and consent to the data policy, here's how to set it up:

πŸ”§ Open the Open Router site: Click your photo profile β†’ {Settings} β†’ {: Sections} β†’ {Training, Logging, & Privacy} β†’ Toggle "on" for the first two settings that will allow for training data ("Enable paid endpoints that may train on inputs", and "Enable free endpoints that may train on inputs") β†’ Now you can use that model for chatting.

πŸ”§ Or, if you don't want your data to be used for training models, you can switch to another model whose provider guarantees it doesn't use your data for training.

.

408

🟰 Your request timed out

.

429

🟰 You are being rate limited

⚑ Creating additional accounts or API keys will not affect your rate limits. However, Open Router does have different rate limits for different models. So:

πŸ”§ You can switch to different models if you encounter this error. Or,

πŸ”§ If you want to use the same model, you should wait before sending your next request.

⚑There are a few rate limits that apply to certain types of requests, regardless of account status:

πŸ”§ Free usage limits: If you’re using a free model variant, you can make up to 20 requests per minute. Or it depends on how many users are using that model. Generally, the more users there are, the longer the wait time will be.

And the following per-day limits apply:

  • If you have purchased less than 10 credits, you’re limited to 50 :free model requests per day.

  • If you purchase at least 10 credits, your daily limit is increased to 1000 :free model requests per day.

.

502

🟰 Your chosen model is down or we received an invalid response from it.

.

503

🟰 There is no available model provider that meets your routing requirements.

β€’

β€’





General Settings for Any LLMs

After setting up your API settings, there are additional configurations you need to complete. In this section, I will provide tips for configuring the rest of the JanitorAI settings, regardless of the LLM you're using, because, in my opinion, the remaining settings are generally the same.

Here is the guide to set them up:

β€’



SETTING WITHIN CHAT

>> Open your Janitor chat → click one chat from whichever bot→ click the "three lines" on the right corner→(Follow the sub-sections below for the guide)

.


β€’> Generation Settings (Recommendation)

  • For JLLM:

{Temperature} = 0 - 1,0

{Max new tokens} = 0

  • For "Proxy" LLMs:

{Temperature} = 0,5 - 1,0

{Max new tokens} = 0

{Context Size} = 16k - 32k

.

{Temperature}:

The lower more logical, the higher more creative. But it can be chaotic if the temperature is too high. I prefer to set it lower than 1,0, starting from 0,5. If the story felt too boring–without progression, I would gradually increase the temperature. But if the character started to get out of control–out of character, I would gradually decrease it.

For me, I usually set the temperature to 0,65.

.

{Max New Tokens}:

It's the limit of how many tokens will be generated. If you set the maximum new tokens to 0, it will be unlimited. If you set a specific number, that's the maximum number of new tokens that will be generated, and it may be cut off in the last sentence of the last paragraph.

If you set the maximum new tokens value too high or leave it unlimited, there may be cases where the bots talk for too long or even speak in your place. To prevent that, you can set the number lower, e.g., 200-300. However, this may result in incomplete sentences in the last paragraph. You can get around this by editing the responses, adding some information based on your imagination about how you want the characters to conclude the last sentence.

What I prefer is to set the max new tokens to 0 (unlimited) because I hate it when the response is incomplete. If you think the response has too much information, you can edit it. Click edit and cut the response where you want to reply back!

.

{Context Size}:

It's like the memory size for processing information in your roleplay with bots. The JLLM doesn't have a setting for this as they have their default context size, but the LLMs from a custom proxy can be set up to 128k. From the information I have, it's better to set it to 32k to prevent errors. If you're using LLMs from Open Router, you can see the maximum size of each LLM on the Open Router site.

For me personally, I set it to 32k, regardless of which LLMs I use. When I encounter an error while generating the chat, I wait a moment and regenerate the response, or refresh the page. You can also lower the context size gradually, but I rarely do that because waiting a moment and regenerating is usually enough to overcome the errors I encounter.

β€’


β€’> Chat Memory

This is the place for you to ensure the bot doesn't forget important events in the chat. It's where you can track your progress with the bot.

Make sure every time you encounter an important event in the chat (like you and char finally dating, getting married, having a child, moving to another city, etc.), you take note of it here.

After that, remember to press {Save Summary} so that what you type in here will be saved.

β€’



OTHER SETTINGS

.

β€’> My Personas

This settings can be found here, Clik: Your photo profile at the corner of your screen β†’ {My Personas} β†’ {+ Add New}, or {v} (if you already have one and want to edit it).

Then add the photo profile and the name, referring to your preferences. And.. here the crucial part: At the appearance, suggested if you use this formula:

[{{user}}= YOURNAME,

Pronoun= ,

Appearance= ,

Scent= .]

For the example:

[{{user}}= Bubu,

Pronoun= she/her,

Appearance= A human female, with a long black hair and black eyes. Height 5'4" or 163 cm, weighs 99 lbs or 45 kg

Scent= Sweet citrus.]

Yeah, the description of my persona is just like that, and it work fine for every kind of roleplay I play. I just write down the most importance parts, keep it simple, to make it easier for the AI to process the information in the roleplay.

From my experience using this description for my persona with Deepseek R1-0528 as the LLM I use, and interacting with AnyPOV bots, the bot never misgenders me.

If you find that a bot is misgendering you or using the wrong pronouns (especially if you're using JLLM), my tip is to edit the last response from the bot and correct every incorrect pronoun. In the next chats, you'll find it writes its responses more accurately because it will refer to the information from the previous chat.

β€’

β€’





System Prompts

If you're using JLLM, the section to set it up is called Advanced Prompts. If you're using other LLMs, the section is called Custom Prompts.

For this section, you can refer to the following sources for customized prompts: kolach3, av.rose, and molek.

For JLLM, I think you NEED to use advanced prompts to make it more slow-paced and avoid speaking on behalf of the user in the bot responses.

But whenever I use Deepseek, I feel like I don't even need to use Custom Prompts at all; I can just leave it blank!

Deepseek is uncensored by default, and from my experience using Deepseek from Open Router, the responses are slow-paced and full of sensory details, especially if the first message indicates that.

And without using custom prompts, it helps me a lot to find good bots. Because, if you can get good results even without custom prompts, that's a sign that the bot is well-designed.

But, if I want to use custom prompts, here are my customized prompts (I designed these custom prompts with Deepseek R1 in mind, but they also work for other LLMs that use a proxy):


[Timekeeping: Start each reply with `[Setting: Location; Time]` to track continuity. Time progression must feel natural (e.g., minutes/hours between scenes). Alternatively, imply time subtly through environmental cues.]

[Style: Slow-paced, immersive narration in detailed fanfiction style. Weave in 1-2 vivid sensory details (scent/sound/touch/taste) per response. Keep responses under 3 paragraphs unless pivotal moments demand depth, ensuring {{user}} can reply easily.]

[Dialogue: Use respectful, nuanced language even during conflict. Avoid harsh/combative tones.]

[Intimacy: Develop physical intimacy graduallyβ€”focus on teasing, slow-burn tension, and emotional buildup. Post-intimacy scenes should highlight tenderness. Use mature, unrestrained descriptions when emotionally justified.]

[{{char}}/NPC Control: Describe all characters except {{user}}’s actions, thoughts, and sensations.]


β€’

β€’





Which One of the LLMs I Should Choose?

I'll share with you my experience of using different LLM Models so far. There is also a post that discusses about this topic; check this out. But in here, I'll share my personal experience:

β€’


  • JANITOR LLM BETA (JLLM)

It's the LLM default from JanitorAI.

The Goodsides:

-> This model is suitable for adult content (18+).

-> The story flows pretty smoothly.

The Downsides:

-> The memory or context size is not very large, so the bots tend to forget easily, even the personality settings of the bot. This makes each bot feel generic and lacks personalization.

Suitable For:

-> Casual chatting with bots using simple settings (small tokens), doesn't require long-term memory or complex thinking processes.

-> If the bot doesn't allow proxy access, and you don't have access to OpenAI models, then you don't have any other choice but to choose this model.

β€’


  • DEEPSEEK R1

What I've tried so far is the Deepseek R1-0528 from Open Router. The Deepseek R1 model uses a reasoning process to generate its responses, which can make the story more coherent and reasonable with each response.

The Goodsides:

-> It has large context size! Pretty well in making bots following their traits according to the bot setting and description!

-> The story can develop gradually without the bots suddenly changing personalities. And the bots' characters can evolve over time without abrupt changes from their initial traits.

-> Good in processing heavy information.

-> The nuance is milder than when using Deepseek V3.

The Badsides:

-> It's more pricey than the Deepseek V3 if you're using the paid version.

-> It usually provides lengthy responses and describes EVERYTHING, even to the point of detailing what the user will be doing, but doesn't typically tell what the user will say (Though sometimes it can happen, especially if you're too lazy to type long answers; if your answer is long, this will rarely happen), and it likes to rephrase what the user said.

Suitable For:

-> Working fine for every kind of bots, really!

-> Bots which have a lot of information to process (or large tokens).

β€’


  • LLAMA series

Not many people use them, but the response is pretty good! The models that I have try it: Llama 4 Maverick, Llama 3-1 Nemotron Ultra, Shisa v2 Llama 3.3-70b.

The Goodsides:

-> Can process large amounts of information.

-> Perfect for a slow-burn story, or I could say the story that is not focused on intimacy.

The Badsides:

-> You might not like this LLM if you're not a fan of slow burn. This LLM can act strangely if you're trying to steer the story towards intimacy, but it works just fine for casual story.

Suitable For:

-> Fluff story, slow burn, casual story without intimacy.

-> For heavy information (or large tokens).

β€’


These are the models I have tried, and my favorite so far is the free version of Deepseek R1-0528 from Open Router!

But since it's gaining popularity, the waiting time for the bot's response is getting longer. I'm currently experimenting with other models. You can also explore the list of models I've provided above, so that you can find your favorite LLM that suits your taste! πŸ˜‰

β€’

β€’





A Quick Look at How to Create Bots

For more detail references, you might want to read these guides, from: NicholasCS, kolach3, absolutetrash, ioverth, ioverth 2, and roach.zip.

Briefly, this is how I create my bots:

  • {Image}: The image generators I recommend are the "Bing Image Creator" site, the "Dream" app, the "Cici" app, and the "PixAI" app. They offer free image generations, and the results are quite good.

  • {Charater Name}: The character's name, that will shows in the character card.

  • {Character Chat Name}: The character's name that will shows in the chat.

  • {Character Bio}: This is information about the character for the user. It will not affect on how the bot works.

  • {Character Tags}: The related tags about the character.

  • {Content Rating}: 18+ or not?

  • {Personality}: The profil description of the character. For me, I use the help of Deepseek AI (DeepThink) and THIS BOT ;) whenever I want to find some ideas and craft bots.

    You can refer to the "Character Definition Templates" from these experienced bot creators when designing a bot character:

    [1], [2], [3], [4], [5], [6].

    And here is my personal template:

    1) Basic Info ( Names, /Gender, Age, Occupation, Role, Heritage, etc.); 2) Appearance (Body details, Hair, Eyes, Facial features, Clothing styles, Scent, etc.); 3) Personality (Traits, Quirks, Speech styles, Likes, Dislikes, Hobbies, etc.); 4) Background (Backstory, Key Relationships, Dynamic with (user), Goals, etc.); 5) Story Setting; 6) Additional Informations.

    • This template is not like filling out your personal data for an ID card form; it's more like a guide on how to design your bot's profile. Not every bot needs to include every element from the template; just use the ones that will make the bot stand out. The principle is to fill in what's important about the bot and leave the points that are irrelevant or that you think users can interpret in different ways blank. This way–you leave those parts blank, allowing the user to choose and determine how to fill in the gaps themselves.

    • If you've designed your bot but aren't sure if the character you've crafted is good enough or if you need help to enhance your bot's character, you can use the help of an AI.

    • I love using Deepseek (DeepThink) because it's uncensored and seems specifically crafted for this kind of purpose. Although my bots don't explicitly describe mature content in the character descriptions, sometimes when I use another AI and mention something slightly adult-oriented, it gets rejected from processing the answer. However, the Deepseek AI's response to bot or roleplay-related questions is superb! It can handle all questions related to this topic very well.

    • I usually ask the AI to review and enhance my character profile description draft. After that, I ask the AI to summarize the content in bullet points before I copy it to the bot's personality section. I can even ask the AI to enhance my draft for the first message and the bot card description, so they are more aligned with the bot's profile and have more polished wording.

  • {Scenario}: I rarely fill this section. Based on the information I have, you should fill this section with consistent details, such as the time period, the general scenario setting, and the important system rules.

  • {Initial message}: From my experience, this is the crucial part that will determine how the next responses will unfold. The most important aspect is to present it from the bot's perspective, to prevent the bot's next response from taking over the user's role. Personally, I prefer to present it in a fanfiction story style, with detailed narration and description.

β€’

β€’





Tutorial Using This "Writing Assistant" Bot

In addition to containing instructions for using Janitor (the instruction just in the bio description), I also crafted this bot to help with writing: aiding in crafting stories, developing characters, and overcoming creative hurdles.

This bot can help you with:

  • Idea generation,

  • Brainstorming and refinement,

  • Character creation and development,

  • World-building support, and

  • Providing constructive feedback.

.

I recommend using Deepseek R1-0528 in the proxy for a better experience!

Try combining the results of this bot with Deepseek AI (DeepThink) when designing a bot. It worked perfectly for me ;)

You can use this bot as it is, leaving the custom prompts blank. It'll work just fine.

Alternatively, fill the custom prompts with this, without any additional prompts:

[Style: Slow-paced, immersive narration in detailed fanfiction style. Weave in vivid sensory details (scent/sound/touch/taste) per response.]

And for me, I prefer to leave the custom prompts blank.

β€’

β€’





How to Edit Your Profile

For reference, you might want to read the guides from: Oishiis, and LunaxLee.

Those tips helped me a lot in editing my profile, especially since I'm still not that good with computer code and CSS. Even though I know the result of my edited profile is still not perfect, I like the new appearance so far! ❀️☺️

For designing your bot cards, there are some templates available. You just need to add the tags to your bots, and the bot card design will change. See the tags and the results after using the template on my page.

β€’

β€’





THE LAST

Well, for now, just that my notes. With these guides, hopefully you can get the most outcome in using Janitor.

P.S. I edited a lot in the LLM part because Chutes is no longer free, and that changed a lot of things.. πŸ₯Ή But hope y'all can still enjoy your role-playing with your dream bots..

And for those of you who can't open the Reddit links I cited:

If you can't open it because your country has banned it, my tips are: Open your Chrome, click Privacy & Security, then search "Use secure DNS", pick "Cloudflare (1.1.1.1)". Then try to open Reddit. But if you still can't open it, JAI is labeled as Mature account, then set your reddit profile to allow mature content (only if you're really 18+!), then set up in your google setting to allow adult content for your google account. For detailed steps, search it in YouTube or Google.

.


Attention!!

  • πŸ˜ƒ The Guide is on Description!!

    I write the Janitor's guide just in the description section. But, I also add interesting description in the char's setting, so this bot hopefully can also help you in writing and making bots.

  • πŸ™‡πŸ» English is not my first language

    There might be grammatical errors or confusing things here. But I hope you can still get the key points I'm trying to say.

  • πŸ€“ I'm not an Expert

    I know I'm still learning using Janitor, but I want to share what I've found when wandering here. If you know things better than me, feel free to correct me.

  • ✍🏻 Not a Final Note

    Maybe I'll edit it from time to time, if I found new informations that I want to write them down.

If you have questions or suggestions, feel free to leave them in the comment section ❀️...

.

proxy allowed

Published chats

0

comments

Leave a comment or feedback for the creator ❀️