<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jait Ramadandi Jeke</title>
    <description>The latest articles on DEV Community by Jait Ramadandi Jeke (@jaitramadandij).</description>
    <link>https://dev.to/jaitramadandij</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F462188%2Fdf14b2fe-ab6d-4ed5-8dd5-05fad7745131.jpg</url>
      <title>DEV Community: Jait Ramadandi Jeke</title>
      <link>https://dev.to/jaitramadandij</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jaitramadandij"/>
    <language>en</language>
    <item>
      <title>Transforming an Old Laptop into a Local AI Chatbot with LLAMA3 and Open WebUI</title>
      <dc:creator>Jait Ramadandi Jeke</dc:creator>
      <pubDate>Sun, 22 Dec 2024 20:21:54 +0000</pubDate>
      <link>https://dev.to/jaitramadandij/transforming-an-old-laptop-into-a-local-ai-chatbot-with-llama3-and-open-webui-22kh</link>
      <guid>https://dev.to/jaitramadandij/transforming-an-old-laptop-into-a-local-ai-chatbot-with-llama3-and-open-webui-22kh</guid>
      <description>&lt;p&gt;In this post, I'll show you how I turned my old laptop, which I hadn't used in a while, into a local ChatGPT clone with just a few simple steps. Setting this up is straightforward and doesn’t require much effort. &lt;/p&gt;

&lt;h3&gt;
  
  
  Why Use a Local AI Chatbot?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Privacy&lt;/strong&gt;: Your data stays local.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customization&lt;/strong&gt;: Fine-tune the model to fit your needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexibility&lt;/strong&gt;: Use the AI as you see fit.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Steps to Set Up a Local AI Chatbot
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Run Open WebUI via Docker
&lt;/h3&gt;

&lt;p&gt;To make the installation easy, I'll use Docker to set up Open WebUI with bundled Ollama support.&lt;/p&gt;

&lt;p&gt;Run the following command on your computer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; 3000:8080 &lt;span class="nt"&gt;-v&lt;/span&gt; ollama:/root/.ollama &lt;span class="nt"&gt;-v&lt;/span&gt; open-webui:/app/backend/data &lt;span class="nt"&gt;--name&lt;/span&gt; open-webui &lt;span class="nt"&gt;--restart&lt;/span&gt; always ghcr.io/open-webui/open-webui:ollama
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This command will start Open WebUI. Once it's running, visit &lt;code&gt;http://localhost:3000&lt;/code&gt; in your browser and set up an admin user.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Install LLAMA3.2:1b
&lt;/h3&gt;

&lt;p&gt;For this example, I’m using the llama3.2:1b model, but you can choose any other large language model (LLM) available on the &lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;Ollama site&lt;/a&gt;, depending on your needs.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the top-left corner of Open WebUI, type the name of the model you want to install.&lt;/li&gt;
&lt;li&gt;In my case, it’s llama3.2:1b.&lt;/li&gt;
&lt;li&gt;Click Pull "llama3.2:1b" from Ollama.com.&lt;/li&gt;
&lt;li&gt;Here’s an example of how it looks during the installation:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fznfkuk57h0wmu3gy38j3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fznfkuk57h0wmu3gy38j3.png" alt="Image description" width="457" height="196"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh0da86i4fcg7ym42mnun.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh0da86i4fcg7ym42mnun.png" alt="Image description" width="613" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's it! You can access your LLM (Large Language Model) from another device with the same network, using a local IP address like this example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjhvxwkdqh96cqputcq8t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjhvxwkdqh96cqputcq8t.png" alt="Image description" width="800" height="233"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the model is installed, you can start using your local AI chatbot. Open WebUI supports multiple LLMs, so you can experiment with different models to find what works best for your needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's next?
&lt;/h2&gt;

&lt;p&gt;I'm planned to fine-tune LLAMA on my own dataset. So, wish me luck ;v&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;https://ollama.com/search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.openwebui.com/" rel="noopener noreferrer"&gt;https://docs.openwebui.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>2 Things That I Started to Think in Reverse</title>
      <dc:creator>Jait Ramadandi Jeke</dc:creator>
      <pubDate>Wed, 08 May 2024 05:09:52 +0000</pubDate>
      <link>https://dev.to/jaitramadandij/2-things-that-i-started-to-think-in-reverse-4h8o</link>
      <guid>https://dev.to/jaitramadandij/2-things-that-i-started-to-think-in-reverse-4h8o</guid>
      <description>&lt;p&gt;A year ago, I bought a book written by Paul Arden titled &lt;a href="https://www.goodreads.com/en/book/show/265525"&gt;"Whatever You Think, Think the Opposite"&lt;/a&gt;. It's a simple book that teaches you that sometimes you need to think the opposite of other people or common ideas. As time went by, I came up with three things that I started to think about in reverse, which I'm going to write about in this article.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Set Goals That are Intended to Fail
&lt;/h2&gt;

&lt;p&gt;Like many other folks, many times I set up a goal and it just didn't work out. Whether it's learning new things, building something, or my personal life, I started to wonder what was wrong with myself and began blaming myself for it. But now, I don't think the same way anymore.&lt;/p&gt;

&lt;p&gt;So, here is what I do. What if you set up a goal but intended it to fail? I know it sounds cliché, but that's what I do now. The idea is, you have a goal, and when it fails, you have to find out why it failed and quickly learn from it. If the goal works, I will be happy. But if it fails, that is okay too, since I intended that goal to fail. So I don't blame myself anymore and don't feel down about it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs8bwo8n1i8tmosie5qvy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs8bwo8n1i8tmosie5qvy.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Being Productive is not all about adding something, but it's about removing something
&lt;/h2&gt;

&lt;p&gt;I used to think that being productive means I can deliver more in terms of work. And that is true. But there is one thing that I forget about. The key to becoming productive is about removing something from your life. Being able to say no to things that are not your main priority or not really important. Removing distractions such as social media and some bad habits that can waste your time.&lt;/p&gt;

&lt;p&gt;Being productive is not all about adding something to your life, but it's about removing things from your life. You can only do things that are right when you remove things that are wrong.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;In wrapping up, let's take a look at what I've learned from these two ideas.&lt;/p&gt;

&lt;p&gt;First off, we found out that setting goals with the expectation that they might fail isn't such a bad idea after all. Instead of seeing failure as a total disaster, we learned to see it as a chance to learn and grow. By embracing this mindset, we can shake off the fear of messing up and actually learn a ton from our mistakes.&lt;/p&gt;

&lt;p&gt;And secondly, being productive isn't just about cramming more stuff into our schedules. It's also about clearing out the distractions and things that aren't important, which are holding us back. By cutting out distractions and focusing on what really matters, we can make room for the things that truly light us up.&lt;/p&gt;

&lt;p&gt;So, in a nutshell, reverse thinking is all about flipping the script and trying out new ways of doing things. It's about embracing the unexpected and being open to unconventional ideas. And who knows? Maybe by thinking a little differently, we'll stumble upon some pretty cool solutions to life's challenges.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>productivity</category>
      <category>learning</category>
    </item>
    <item>
      <title>Why do we get frustrated when learning something?</title>
      <dc:creator>Jait Ramadandi Jeke</dc:creator>
      <pubDate>Sat, 16 Sep 2023 07:35:57 +0000</pubDate>
      <link>https://dev.to/jaitramadandij/why-do-we-get-frustrated-when-learning-something-2h43</link>
      <guid>https://dev.to/jaitramadandij/why-do-we-get-frustrated-when-learning-something-2h43</guid>
      <description>&lt;p&gt;When learning a new skill, we often reach a frustrating point, especially if you are a beginner, feeling that it's beyond our capabilities. We unconsciously give up before we actually quit. Boredom, panic, frustration, and insecurity are normal emotions in the process.&lt;/p&gt;

&lt;p&gt;If you don’t feel frustrated while learning something, maybe you’re not learning. So, when you’re practicing some skills and you feel frustrated, that’s your weakness. So congratulations! You just know what your weakness is. In that moment, you started working on what you weren’t good at.&lt;/p&gt;

&lt;h2&gt;
  
  
  Learning is a painful process.
&lt;/h2&gt;

&lt;p&gt;Pain is good for you. I know your tendency is to try to make it easy for yourself. Because at the end of the day, we are just human beings. We don’t like pain. So at some point, when you learn something and you feel it’s really easy to do and so much fun, you’re probably not learning. You’re trying to avoid your weaknesses.&lt;/p&gt;

&lt;h2&gt;
  
  
  The frustration is a sign of progress.
&lt;/h2&gt;

&lt;p&gt;Frustration is a signal that your mind is processing complexity and requires more practice. Trusting this will all happen, you will allow the natural learning process to move forward, and everything else will fall into place.&lt;/p&gt;

&lt;p&gt;So when you’re frustrated while learning, you don’t really know what you need to do. And that’s a signal on the way to a breakthrough. That moment you’re about to give up is where the magic happens. On the next day, all of the perfect solutions came to you. So, you only need to rest and chill a bit. Not quit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Adopt the right mindset.
&lt;/h2&gt;

&lt;p&gt;If you go that far, you will know that pain and frustration are good things. Once you know that, you are able to wait for the breakthrough that will come because you don’t give up.&lt;/p&gt;

&lt;p&gt;You cannot change the topics that you’re learning to make them easier for you. But you can change your point of view. "Hmm, okay. This is my weakness; I need to work on it!". Adopting the right mindset is so important.&lt;/p&gt;

&lt;p&gt;So remember, when you have that frustration, you are on the right path. Don’t give up!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>discuss</category>
      <category>productivity</category>
      <category>learning</category>
    </item>
    <item>
      <title>Cara Membuat Output dari Query MongoDB Shell Menjadi Berwarna</title>
      <dc:creator>Jait Ramadandi Jeke</dc:creator>
      <pubDate>Sat, 28 Aug 2021 15:12:17 +0000</pubDate>
      <link>https://dev.to/jaitramadandij/cara-membuat-output-dari-query-mongodb-shell-menjadi-berwarna-4igk</link>
      <guid>https://dev.to/jaitramadandij/cara-membuat-output-dari-query-mongodb-shell-menjadi-berwarna-4igk</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0gCDDCxM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mf77bpednitct5b3v8v0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0gCDDCxM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mf77bpednitct5b3v8v0.png" alt="Alt Text" width="800" height="588"&gt;&lt;/a&gt;&lt;br&gt;
Halo guys! Kali ini saya akan sharing tentang bagaimana cara merubah output dari query MongoDB Shell menjadi berwarna agar lebih nyaman untuk dibaca. Untuk melakukan itu kita akan menggunakan sebuah shell extension yang bernama &lt;a href="https://github.com/TylerBrock/mongo-hacker"&gt;Mongo-Hacker&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Untuk menginstallnya, kita hanya butuh 4 langkah berikut:&lt;/p&gt;

&lt;p&gt;Step 1: Clone repository dari Mongo-Hacker&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git clone https://github.com/TylerBrock/mongo-hacker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 2: Masuk kedalam folder mongo-hacker&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd mongo-hacker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 3: Install package&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;make install
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 4: Bersikan folder&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd ..
rm -rdf mongo-hacker/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Selesai!&lt;/p&gt;

</description>
      <category>mongodb</category>
    </item>
  </channel>
</rss>
