A little insane, but in a good way.
I would be happy to, but all current local models are vastly inferior to GPT-3.5. The unfortunate reality is that if you want to create anything high quality, you must use the OpenAI API.
It isn’t available outside the US and the UK, so I can’t try it yet, but I will as soon as I get access.
@AutoTLDR
Ethan Mollick has two recent articles related to this topic:
@AutoTLDR
deleted by creator
deleted by creator
@AutoTLDR the other bot talks too much, please summarize this
@ChatGPT@lemmings.world could you please compare the advantages and disadvantages of having a general-purpose chatbot available in an online forum that can answer any questions, whether relevant to the conversation or not?
AFAIK it doesn’t. But I haven’t got access to it yet, so this is based on tweets by some people who have.
Everyone does cringey things sometimes but it takes a great person to admit their mistakes
I’ve just tried the version of GPT-4 available via the API. There has been a lot of talk about GPT-4 being “nerfed” since the May update, and I wanted to see if I could see an obvious difference. I ran the same prompt in both the web-based ChatGPT with GPT-4 selected, and a self-hosted chat UI that uses the API. The API call used a temperature value of 0.7.
I use Nginx as a reverse proxy on my Ubuntu server. There is a web app running on localhost:3456, and I want to expose it to the internet using the hostname chat.botond.online. I also want to protect it using HTTP Basic authentication. I have the Apache tools for managing htpasswd files installed.
Could you please write an Nginx config file for this site, and also explain how I can create a htpasswd file and use it in this nginx config to protect it?
Sure, I can certainly help with that. We will perform these tasks in two steps:
Let’s start with the first one.
Step 1: Create an htpasswd file
You can create a .htpasswd file by using the htpasswd
command that comes with the Apache httpd
server. In your case, you can create a user (let’s say user1
) like this:
sudo htpasswd -c /etc/nginx/.htpasswd user1
This will prompt you to enter and confirm a password for the user user1
. The -c
option tells htpasswd
to create a new file.
Please note: This will overwrite the file if it already exists. If you want to add additional users to an existing .htpasswd file, do not use the -c
flag.
Step 2: Write an Nginx config file
Now, let’s create an Nginx configuration. You can add a new server block in your Nginx config, or create a new config file under /etc/nginx/sites-available/
and symlink it to /etc/nginx/sites-enabled/
. I’ll create a new server block as an example:
server {
listen 80;
server_name something.somewhere.com;
location / {
auth_basic "Restricted Content"; # This is the message that will be shown in the login prompt
auth_basic_user_file /etc/nginx/.htpasswd; # The file you created earlier
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:3456;
}
}
This will set up basic HTTP authentication on your site and also reverse proxy requests to your web app running on localhost:3456
.
Note: If you’re planning to expose this to the internet, I would strongly recommend setting up SSL as well. You can use a free service like Let’s Encrypt to get an SSL certificate. If you don’t secure your site with HTTPS, the HTTP Basic authentication credentials will be sent in plain text, which is a significant security risk.
Sure, let’s start by creating the htpasswd file for HTTP basic authentication. You can create a .htpasswd file using htpasswd
command that comes with the apache2-utils
package. If it’s not installed, you can install it via apt-get install apache2-utils
.
To create a .htpasswd file, run the following command:
htpasswd -c /etc/nginx/.htpasswd username
Replace username
with the username you want. After running this command, you will be prompted to enter and confirm a password for this user. The -c
flag is used to create a new file. Do not use this flag if you already have a .htpasswd file and just want to add a new user.
Now, let’s create a Nginx configuration file. Using your favorite text editor (nano, vim, etc.), open up a new configuration file in /etc/nginx/sites-available/
, for example:
sudo nano /etc/nginx/sites-available/something.somewhere.com
Then, paste the following configuration:
server {
listen 80;
server_name something.somewhere.com;
location / {
auth_basic "Restricted Content";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:3456;
}
}
In this configuration:
listen 80;
means Nginx is listening on port 80 for incoming connections.server_name something.somewhere.com;
specifies the hostname.auth_basic "Restricted Content";
enables HTTP basic authentication with the message “Restricted Content”.auth_basic_user_file /etc/nginx/.htpasswd;
specifies the location of the .htpasswd file.proxy_set_header
directives are used to pass on some client information to the proxied server.proxy_pass http://localhost:3456;
is used to forward requests to your web app running at localhost:3456
.Save and close the file.
To enable this site, create a symbolic link of it in the sites-enabled
directory:
sudo ln -s /etc/nginx/sites-available/something.somewhere.com /etc/nginx/sites-enabled/
Finally, test the configuration and restart Nginx:
sudo nginx -t
sudo systemctl restart nginx
Now your web app should be accessible from the internet at http://something.somewhere.com
, and it should ask for a username and password as you specified in the .htpasswd file.
There is a marked difference between the two responses but as far as I can see, both are correct and high-quality. ChatGPT is less verbose, the API generates lots of detail. I prefer the API’s answer slightly.
I will probably try the same experiment with much more complex problems (if anyone has a suggestion for a good test case, please tell me in a comment), but on this simple problem, they both performed very well.
BTW Satan is a very cool guy, follow him on Twitter: @s8n
And people are seriously considering federating with Threads if it implements ActivityPub. Things have been so crazy recently that I think If Satan existed and started a Lemmy instance, probably there would still be people arguing in good faith for federating with him.
Lol that’s like saying there’s too much porn on /r/gonewild
Yes, their actual argument is excellent, but this remark gives me instant /r/iamverysmart vibes
“Timeo Danaos et dona ferentes.”
Companies like Meta poison everything they touch. They are a deeply evil, psychopathic organization. They are responsible for causing extremely harmful runaway effects in human society that I’m not even sure are possible to fix. The very reason for Lemmy’s recent popularity is that people are fed up with the “if something is free, you aren’t the user, you are the product” situation and its consequences (see Reddit vs. /u/spez).
Their intent to federate is a blatantly obvious attempt at an “embrace, extend, extinguish” strategy - I’m surprised anyone seriously considers federating with them. They need users to solve the “chicken and egg” problem and joining the fediverse would be an easy way for them to populate their service with content. Their motivations are obviously and transparently malicious and self-serving. They don’t care about the goals and values of the fediverse at all, all they see is an easy way to gain initial users and content. At the first moment federation will be more inconvenient than useful to them, after they sucked all the profit they could out of it, they will drop the entire thing like a hot potato, and we will be left in the dust.
I personally like this instance very much, and I’ve been putting hours and hours of work into building the AUAI community since the day I joined. But I wouldn’t hesitate for a second before deleting my account and never looking back if the community here decided to federate with Meta.
EDIT: another explanation of why they want to join the fediverse
If I remember correctly, the properties the API returns are comment_score
and post_score
.
It would summarize the link. Unfortunately that’s an edge case where the bot doesn’t do what you mean.