teleren/devto huggingface dataset:
How to Create Chatbot Using PaLM 2 Model (chat-bison@001)
Tags: webdev, programming, tutorial, ai
Published: 2023-08-24 10:13:58

It’s good to have a friendly companion with whom we can share our feelings and get consolidation as well as suggestions for our problems. A bot can do such things for us, as we can’t wander all the time with our friends or mentors!

In a world where technology is constantly evolving, one innovation that has captured the imagination of both developers and users alike is the creation of chatbots.

If you've ever wondered about the inner workings of these chatbots and How to craft one by yourself..? 

You're at the right place! 

Don't worry if you're new to the world of AI and programming – by the end of this journey, you'll have the knowledge and confidence to create your very own chatbot that leverages the power of PaLM 2.

## List of Contents

- When to use chat-bison and when text-bison?
- Do You need to use Vertex AI SDK or PaLM API?
- Authentication To Google
- Setup service account key
- Setup Virtual Environment
- Implement Bot with Vertex AI Python SDK
- Final Thoughts

In this blog, you will learn different use cases of text-bison vs. chat-bison models.

It’s quite easy to integrate the built-in chat model provided by Google Cloud [Vertex AI](https://cloud.google.com/vertex-ai), with a few steps of configuration.

So, let's embark on this adventure and unlock the secrets behind designing a chatbot that's bound to engage, assist, and captivate by visiting [Canopas Blog](https://blog.canopas.com/how-to-create-your-own-chatbot-using-palm-2-model-chat-bison-001-fe99a2448f28).

Follow [Canopas](https://blog.canopas.com/) for our latest technical blog posts!
Step #2 : TravelNest - System Design Diagrams
Tags: systemdesign, webdev, product
Published: 2023-08-24 10:08:45

Now that we have defined product requirements for MVP, the next step is to have some diagrams that describe the system to be build.

For this purpose, we will use [C4 models](https://c4model.com/) which is an efficient way to iteratively define the system with increasing level of details.  

_Tools used in this step:_

1. [C4 models](https://c4model.com/)
2. [Excalidraw](https://c4model.com/) web diagramming tool

## TravelNest Context Diagram

This first diagram is a zoomed out view of the system to be built.  It places the system at center and describe various stakeholders and other system interactions.

It is created for a wider group of audience who are both technical and non-technical.

Here's a representation of context diagram for TravelNest Platform.

![TravelNest System Context Diagram](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cr7wkf8n9knew140p9vz.png)

Now that we have the big picture defined, let's zoom into the central box and define some of its components.

## TravelNest Container Diagram

Now we zoom in to the context diagram to describe next level of details via container diagram.

* TravelNest System is broken down into major containers - Web application, API application, User Management and Database
* For each container, certain level of implementation details are provided.  For e.g., Web application is developed using ReactJS
* Arrows between containers describe how they work with each other

Level of details in this diagram depends on individual teams.  Some teams may choose to go into finer levels while others prefer to keep it at high level to start with.

Here's how the container diagram for TravelNest looks like...

![TravelNest Container Diagram](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o2agh1pesy5f6lxpavp2.png)

## TravelNest Component Diagram

The third 'C' in the C4 diagram stands for Components.  

The Component diagram shows how a container is made up of a number of "components", what each of those components are, their responsibilities and the technology/implementation details.

As we will be building the application using cloud-native AWS services, we will skip this diagram and cover it in the next post that describes the solution architecture.

## Next steps

As a next step, let's make some system design decisions and define the solution architecture using AWS components.  See you all soon.

**_Posts in this series:_**

1. [Step #0 : Creating TravelNest - an AirBnB functional clone](https://dev.to/meetashwin/creating-an-airbnb-clone-travelnest-3bja)
2. [Step #1 : TravelNest - Define Product requirements for MVP](https://dev.to/meetashwin/step-1-travelnest-product-requirements-for-mvp-b0b)
3. [Step #2 : TravelNest - System Design Diagrams](https://dev.to/meetashwin/step-2-travelnest-system-design-diagrams-3k2p)
Conditional expressions C#
Tags: webdev, beginners, programming
Published: 2023-08-24 09:51:37

A separate set of operations represents conditional expressions. Such operations return a boolean value, that is, a value of type _bool_: _true_ if the expression is true, and _false_ if the expression is false. These operations include comparison operations and logical operations.

**Comparison operations** 

Comparison operators compare two operands and return a bool - _true_ if the expression is true and _false_ if the expression is false.

- ==

Compares two operands for equality. If they are equal, then the operation returns _true_, if not equal, then _false_ is returned:

```C#
int firstNumber = 10;
int secondNumber = 4;
bool thirdNumber = firstNumber == secondNumber; // false
```

- !=

Compares two operands and returns true if the operands are not equal and false if they are equal.

```C#
int firstNumber  = 10;
int secondNumber = 4;
bool thirdNumber = firstNumber != secondNumber; // true
bool fourthNumber = firstNumber != 10; // false
```

- < 

Operation "less than". Return true the first operand is less than second, and false if the first operand is greater than the second:

```C#
int firstNumber  = 10;
int SecondNumber = 4;
bool thirdNumber = firstNumber < SecondNumber; // false
```

- >

Operation "more than". Compares two operands and returns true if the first operands is greater than the second, otherwise returns false:

```C#
int firstNumber = 10;
int secondNumber = 4;
bool thirdNumber = firstNumber > secondNumber; // true
```

- <=

Operation "greater than or equal to." Compares two operands and returns true if the first operand is greater than or equal to the second, otherwise false is returned:

```C#
int firstNumber = 10;
int secondNumber = 4;
bool thirdNumber = firstNumber <= secondNumber; // false
bool fourthNumber = firstNumber <= 10; // true
```

- >=

Operation "greater than or equal to." Compares two operands and returns true if the first operand is greater than or equal to the second, otherwise false is returned:

```C#
int firstNumber = 10;
int secondNumber = 10;
bool thirdNumber = firstNumber >= secondNumber;     // true
bool fourthNumber = firstNumber >= 25;    // false
```

**Logical operators**

`&& - Logical operator AND`
`|| - Logical OR operator`
`! - Unary logical negation`

```C#
bool firstCondition = true;
bool secondCondition = false;

bool firstResult = firstCondition && secondCondition // false
bool secondResult = firstCondition || secondCondition // true
bool thirdResult = !firstCondition // false
```

My [GitHub](https://github.com/ZafarUrakov)

References:
1.[Microsoft](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/boolean-logical-operators)
START - How to Solve any version of Captcha with CaptchaAI
Tags: captch, solving, captchaai, tutorial
Published: 2023-08-24 09:49:33

Solving Captcha using CaptchaAI is very easy, Let's do it in a few simple steps!

 

1. Log into your CaptchaAI account 
Navigate to the CaptchaAI website and log into your Account.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jf3jugyouuag9lwm4tkq.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j2y6vzlcu18n7e89rk36.png)
2. Make sure that you are having CaptchaAI Threads 
 

From Your [Dashboard](https://captchaai.com/dashboard.php?from=21), Check your available total threads

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5jptt005zjk934376mrf.png)

**

> Note: If your Total Threads is "0", You can check this article for adding threads and start solving Captcha with [CaptchaAI](https://help.captchaai.com/en/articles/6820221-subscribe-subscribe-to-captchaai-and-start-solving-recaptcha-hcaptcha-etc)
**

 3. Copy Your API Key
 

Copy your CaptchaAI API Key

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t70mof2hxtr3kmrowm7n.png)
{% embed https://www.youtube.com/watch?v=7Un3f6AB2QA %}

**Important: There are 2 Prospects!**
Case #1 CaptchaAI is available in your software options.
Case #2 CaptchaAI is not available in your software options, But 2Captcha is available. 

 

> According to the correct prospect for your case, Let's continue!

<u>Case #1</u>
4. Choose CaptchaAI option and Paste Your API Key
 

Choose CaptchaAI option in Your Software

 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mblbskfe36vxyefnq2zj.png)




Select CaptchaAI.com

 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ctv19cdt5y5r3ga5i79s.png)




Then, Paste your API Key here then click OK

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oq0cyljvv9wqyilot5rg.png)


GSA search engine ranker with Captcha AI
Now, CaptchaAI option is ready to solve your Captcha!

 

Finally, Run The Software!

{% embed https://www.youtube.com/watch?v=BiHkjCGdCEk %}

**Case #2
**
4. Download CaptchaAI Emulator 
 

Set Up CaptchaAI Emulator from [here](https://captchaai.com/emulator.php?from=21)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ey7ba5plooty9k65n67i.png)

{% embed https://youtu.be/vpT3cK8cqYU %}

5. Choose 2Captcha option and Paste Your API Key


Choose 2Captcha option in Your Software

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ldt538npdj0k1hucz5pn.png)

Then, Paste your CaptchaAI Key
{% embed https://youtu.be/Ujs9TVm0o_0 %}


6. Run CaptchaAI Emulator
 

Run The Emulator that you already setup


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nzkqxv42ucl3tpvxqxvh.png)

Finally, Run The Software!
Congrats! All should work normally Now!

Note: If you issued any problems with any of the previous steps, Please contact us and our[ support team](https://help.captchaai.com/?from=21) will be glad to help you to complete your integration.
Concluding My Outreachy Internship Journey: Embracing the Linux Kernel
Published: 2023-08-24 09:43:15

**Introduction:**

Hello everyone,

Today, I want to share my thoughts as I finish my Outreachy internship. I'm Sumitra Sharma. For the past four months, I've been a part of the May 2023 Outreachy group, learning about the Linux Kernel. I worked on a project called "Converting kmap() and kmap_atomic() call sites to kmap_local()".

**A Journey Fueled by Passion and Learning:**

This journey has been really exciting. I started as a contributor for a month and then had a special three-month learning experience. I met many awesome people who are very passionate about what they do. Seeing their hard work inspired me to work harder too.

**Walking Alongside Linux Kernel Titans:**

I got to work with amazing people who know a lot about the Linux Kernel. They work really hard and are very good at what they do. Working with them was a privilege and taught me a lot.

**Not Goodbye, Just See You Later:**

Even though my internship is ending, I'm not saying goodbye. I want to keep contributing to the Linux Kernel. During these months, I've gained more than technical skills. I've learned about communication and soft skills, which are essential in any field. These skills have boosted my confidence and will be useful in my future endeavors. On the technical side, I've achieved a lot. I've become comfortable with Git, building and installing the kernel, a task that initially seemed daunting. Understanding memory management, a complex topic, is another milestone I've achieved during this time.

**Mentors: My Guides:**

I had mentors who helped me a lot. They were like guides, always there to help me when I had questions. Thanks to Alison, Ira, Fabio, and Deepak for believing in me and giving me this chance. I really enjoyed working with them.

**Gratitude to Mentors and Outreachy:**

This project helped me see what I want to do in the future. It wouldn't have been possible without the help of my mentors and the Outreachy program. They trusted me and that made a big difference. This experience showed me how exciting open-source is.

Thank you for being part of my journey.
Happy Coding :)
Jasa Bikin Web Terlatih
Tags: jasabikinwebterlatih, websiteprofesional, desainmengesankan, solusidigitalkreatif
Published: 2023-08-24 09:38:13

Kami adalah pilihan terbaik untuk Anda yang membutuhkan **[jasa pembuatan website profesional](https://medium.com/@japersweb)** dengan tim yang terlatih dan berpengalaman. Dengan fokus pada desain yang estetis dan fungsionalitas yang optimal, tim kami siap membantu mewujudkan visi Anda dalam bentuk website yang menarik dan mudah digunakan. Dari tahap perencanaan hingga peluncuran, kami mengutamakan kerjasama yang erat dengan klien untuk memastikan setiap detail diperhatikan dengan seksama. Dengan layanan jasa pembuatan website yang terlatih, kami menawarkan solusi yang sesuai dengan kebutuhan bisnis dan personal Anda.

Jasa pembuatan website terlatih kami memiliki rekam jejak yang kuat dalam menghadirkan solusi digital yang memukau dan efektif. Tim ahli kami memahami pentingnya responsivitas dan kecepatan dalam sebuah website modern. Dengan menggunakan teknologi terbaru, kami mengoptimalkan setiap elemen website untuk tampil sempurna di berbagai perangkat, mulai dari komputer desktop hingga smartphone. Dengan pengalaman yang mendalam dalam berbagai industri, kami mampu memberikan website yang tidak hanya menarik secara visual, tetapi juga mampu meningkatkan konversi dan interaksi pengguna.

Keunggulan utama dari jasa pembuatan website terlatih kami adalah komitmen kami terhadap kepuasan klien. Kami percaya bahwa website adalah wujud digital dari identitas bisnis atau proyek Anda, dan oleh karena itu, kami berusaha keras untuk mencerminkan esensi Anda melalui desain dan konten yang unik. Dengan penuh semangat, kami mendengarkan ide-ide Anda, memberikan saran berdasarkan pengalaman kami, dan bekerja sama untuk menciptakan website yang mengesankan. Jadikan kami mitra Anda dalam menghadirkan kehadiran online yang mengesankan dan profesional melalui layanan jasa bikin web terlatih yang kami tawarkan.
The Role of Penetration Testing in Appsec
Tags: penetration, testing, appsec, security
Published: 2023-08-24 09:37:07

Penetration testing plays an important role in application security by identifying vulnerabilities and weaknesses in applications. It helps to:

Find vulnerabilities that automated tools miss
Mimic real-world attacks
Provide insights on how to improve security controls
Penetration tests are conducted by security experts who think like attackers. They use the same techniques as hackers to evaluate the security of applications.

Some key benefits of penetration testing are:

It can uncover both known and unknown vulnerabilities
It simulates how attackers would actually target an application
The results provide actionable recommendations to fix issues and harden security
The penetration testing process typically involves:

Reconnaissance - Gathering information about the target application
Scanning - Using tools to examine the application for vulnerabilities
Gaining Access - Attempting to exploit vulnerabilities to breach security controls
Maintaining Access - Seeing if access can be maintained long enough to achieve goals
Analysis - Compiling results into a report of findings and recommendations
The penetration test report details specific vulnerabilities found, sensitive data accessed, and how long the testers were able to remain undetected.

Organizations can use these insights from penetration tests to:

Patch vulnerabilities
Configure web application firewalls and other controls
Improve the security of development processes
Meet compliance requirements like PCI DSS
In summary, penetration testing plays a critical role in application security programs by identifying weaknesses that automated tools miss. The results provide valuable input for strengthening defenses, hardening configurations, and improving the overall security posture of applications.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mx8ofknsox9nddfibncf.png)
SQLite database in a Shared Folder
Tags: lovevol, sqlite, shared, folder
Published: 2023-08-24 09:30:53

I developed an application (https://www.youtube.com/@MarcinScholke) and I have a SQLite database in a shared folder. What is your experience with such a solution, how many people can use this application, apart from SQLite, the program works with MySQL and MsSQL, but with SQLite in a common folder, it is very quick to work in a team
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jvo557udap40glgellx4.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6pe74ei8w7719eso7o4v.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f2synpvvnrl8c05mkc7c.jpg)

Thanks.
Man Club| Game Bài ManClub - Đăng Ký &amp; Đăng Nhập Chính Thức
Published: 2023-08-24 09:24:39

Game bài Manclub ⭐ là một trong những cổng game bài xanh chín nhất Việt Nam ✔️. Và được cộng đồng game thủ Việt Nam ủng hộ đông đảo
Website :     https://manclub.cc/
SĐT :0984411100
Địa chỉ : 160 Nguyễn Quý Yêm, An Lạc, Bình Tân, Thành phố Hồ Chí Minh, Việt Nam
Hastag: #manclub #manclubcc

https://twitter.com/manclubcc

https://www.linkedin.com/in/manclubcc/

https://about.me/manclubcc

https://www.reddit.com/user/manclubcc

https://www.flickr.com/people/manclubcc/

https://www.youtube.com/@manclubcc

https://www.tumblr.com/manclubcc

https://www.pinterest.com/manclubcc/

https://dribbble.com/manclubcc/about

https://tapas.io/manclubcc

https://replit.com/@manclubcc

https://www.instapaper.com/read/1628665694

https://en.gravatar.com/manclubcc

https://hub.docker.com/u/manclubcc

https://linkhay.com/u/manclubcc

https://www.diigo.com/profile/manclubcc

https://sketchfab.com/manclubcc

https://www.openstreetmap.org/user/manclubcc

https://www.twitch.tv/manclubcc/about

https://folkd.com/user/manclubcc

https://gab.com/manclubcc
Empower Your Journey with an Online Cyber Security Course in Pune
Tags: cybersecurity, pune, training, course
Published: 2023-08-24 09:08:41

Digital protection with WebAsha Technologies' comprehensive [online cyber security course in Pune](https://www.webasha.com/courses/cyber-security). Our specialized program empowers you to navigate the intricacies of the digital landscape and secure it effectively, all through the convenience of virtual learning. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zuv1f670rg4tcwlqc3ek.jpg)
Join Online Cyber Security Classes in Pune with WebAsha Technologies
Tags: cybersecurity, pune, training, course
Published: 2023-08-24 09:06:34

Boost your cyber security insight through WebAsha Technologies' interactive [online cyber security classes in Pune](https://www.webasha.com/courses/cyber-security). With our specialized courses, you can fortify your digital defense skills from the convenience of your location. Join us in Pune and embark on a transformative journey toward cyber security.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wky1tqf01am3t9lkvqnh.jpg)
INSERT statement in PostgreSQL
Published: 2023-08-17 18:34:45

In this tutorial, We will be exploring how to add new row in the existing table.
Let's get started...

The `INSERT` statement is used to insert a new row in the table. 

**Syntax**

```
INSERT INTO table_name(column1, column2, …)
VALUES (value1, value2, …);
```
In the above syntax, we can see that first we have specify the table name with the `INSERT INTO` keywords and the table will have list of comma-separated columns in the brackets.
Second, we have to provide values against each column after `VALUES` keyword, that must be in the same orders as columns are.
If you want to return the row that is just inserted use the following code in the end:

```
RETURNING *;
```

If you want to return just some information, just specify the one or more column names after 'RETURNING' keyword like this:

```
RETURNING id;
```
In the above code I am returning ID only.

**EXAMPLE**
Getting the last insert 'id':
Suppose we want to return the id of the last in the table Named `links` that has `url` and the `name`, 'id' and 'description' as columns.

```
INSERT INTO links (url, name)
VALUES('http://www.postgresql.org','PostgreSQL') 
RETURNING id;
```
In the above code we are inserting 'url' and 'name' values and returning the `id` of the last insert.
**OUTPUT**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/31r23tncpv6otymk1b6a.png)

**Conclusion**

In this article we learnt about the 'INSERT' statement and it's example.
Online Cyber Security Training in Pune: Learn with WebAsha Technologies
Tags: cybersecurity, pune, training, course
Published: 2023-08-24 09:03:18

Embrace the flexibility of learning with WebAsha Technologies' [online cyber security training in Pune](https://www.webasha.com/courses/cyber-security). Our specialized courses offer extensive insights into the complex world of digital security, all from the comfort of your own space. Delve into crucial topics including ethical hacking, network defense, and risk management, guided by industry experts. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z748xhx1g1w1opb6e9tj.jpg)
Vector database: What is chromadb doing under the hood?
Tags: ai, python, learning, opensource
Published: 2023-08-24 09:02:34

I have been hearing about vector databases a lot recently. As I was exploring the python LangChain library, I stumbled upon chromadb. Available as python and javascript libraries, chromadb is an open source embedding (vector) database.

My curiosity for databases and their internals led me to look under the hood of chromadb and understand what it was doing.

But what is a vector in the first place? A vector is a high dimensional represenation of a datapoint in the vector space. Each vector can have from small number to a very large number of dimensions, depending on the complexity of data. Vectors make it easy to determine similarity between data.

Vector databases give us an easy way to store and retrieve vectors. But how do they work?

Vector databases work by creating an index of all the vectors in the database. This index is based on the vectors' characteristics and similarities. When a query is made to retrieve a vector, the database searches the index to find the most similar vectors and returns them as results. This allows for fast and efficient retrieval of vectors, even in large and complex databases.

This is what chromadb is doing as per my reading of the code

* For the in-memory version, chromadb uses sqlite to store vectors. Sqlite is a file based relational database that does not have vector support out of the box.
* When a document is being added to a collection, chromadb uses a default embedding function to create the vectors for it.
* For each collection an index is created using the hnswlib python library (an implementaion of HNSW approximate nearest neighbor search algorithm)
* When a text string is queried on the collection—chromadb creates vectors for the strings using the same embedding function as before. Then it searches through the index for k nearest neighbours, where k can be specified in the query.
* The index contains the UUIDs for the documents and using them the actual matching text strings are returned.


It is interesting to see that chromadb has utilised existing technologies to create a vector database. I am interested to read more about the vector search algorithms.

Cover Photo by [Rushikesh Gaikwad on Unsplash](https://unsplash.com/@stocksbyrg?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)