<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Gemini on ByteJog</title>
    <link>https://bytejog.com/tags/gemini/</link>
    <description>Recent content in Gemini on ByteJog</description>
    <image>
      <title>ByteJog</title>
      <url>https://bytejog.com/assets/bytejog32.png</url>
      <link>https://bytejog.com/assets/bytejog32.png</link>
    </image>
    <generator>Hugo -- 0.152.2</generator>
    <language>zh</language>
    <lastBuildDate>Sun, 14 Apr 2024 20:22:07 +0800</lastBuildDate>
    <atom:link href="https://bytejog.com/tags/gemini/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>如何优雅流畅的使用Google Gemini 1.5 pro服务</title>
      <link>https://bytejog.com/posts/ai/google_gemini/</link>
      <pubDate>Sun, 14 Apr 2024 20:22:07 +0800</pubDate>
      <guid>https://bytejog.com/posts/ai/google_gemini/</guid>
      <description>&lt;h2 id=&#34;获取gemini-api-key&#34;&gt;获取Gemini API KEY&lt;/h2&gt;
&lt;p&gt;准备3-4个谷歌账号，因为5月2日之后谷歌就开始收费，Gemini 1.5免费1分钟2次请求，一天50次，多个账号均衡一下请求，满足日常使用。&lt;br&gt;
可以按照大佬分享方法注册账号 &lt;a href=&#34;https://linux.do/t/topic/29032&#34;&gt;无需手机号认证注册谷歌邮箱&lt;/a&gt;&lt;br&gt;
进入谷歌获取&lt;a href=&#34;https://aistudio.google.com/app/apikey&#34;&gt;Get API key&lt;/a&gt;&lt;br&gt;
现在不用申请直接可以使用的1.5模型&lt;/p&gt;
&lt;h2 id=&#34;代理谷歌请求&#34;&gt;代理谷歌请求&lt;/h2&gt;
&lt;h3 id=&#34;cloudflare-代理&#34;&gt;Cloudflare 代理&lt;/h3&gt;
&lt;p&gt;可以参考zhile的 &lt;a href=&#34;https://zhile.io/2023/12/24/gemini-pro-proxy.html&#34;&gt;我们也要用Gemini Pro&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;nginx代理&#34;&gt;Nginx代理&lt;/h3&gt;
&lt;p&gt;原理和上面一致，通过Nginx是把代理放到个人小机上面，这样要求你的小鸡能够正常访问谷歌。&lt;/p&gt;
&lt;p&gt;这种形式的好处就是以固定IP的形式访问谷歌大模型服务。&lt;/p&gt;
&lt;p&gt;在服务器运行测试命令，替换 &lt;code&gt;YOUR_API_KEY&lt;/code&gt; 为你的API key，有回复可以进行下一步&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;&lt;/span&gt;  -H &lt;span class=&#34;s1&#34;&gt;&amp;#39;Content-Type: application/json&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;&lt;/span&gt;  -d &lt;span class=&#34;s1&#34;&gt;&amp;#39;{&amp;#34;contents&amp;#34;:[{&amp;#34;parts&amp;#34;:[{&amp;#34;text&amp;#34;:&amp;#34;Write a story about a magic backpack&amp;#34;}]}]}&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;&lt;/span&gt;  -X POST &lt;span class=&#34;s1&#34;&gt;&amp;#39;https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=YOUR_API_KEY&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Nginx配置server部分如下：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-nginx&#34; data-lang=&#34;nginx&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;server&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;listen&lt;/span&gt;       &lt;span class=&#34;mi&#34;&gt;443&lt;/span&gt;  &lt;span class=&#34;s&#34;&gt;ssl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;server_name&lt;/span&gt;  &lt;span class=&#34;s&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;root&lt;/span&gt;         &lt;span class=&#34;s&#34;&gt;/xxx/html/web&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# ssl on;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;&lt;/span&gt;    &lt;span class=&#34;kn&#34;&gt;ssl_certificate&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;/xxx/xxx/ca.pem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;ssl_certificate_key&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;/xxx/xxx/private.key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;103.21.244.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;103.22.200.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;103.31.4.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;141.101.64.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/18&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;108.162.192.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/18&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;190.93.240.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/20&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;188.114.96.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/20&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;197.234.240.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;198.41.128.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/17&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;162.158.0.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/15&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;104.16.0.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/13&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;104.24.0.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/14&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;172.64.0.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/13&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;allow&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;131.0.72.0&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/22&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;deny&lt;/span&gt;    &lt;span class=&#34;s&#34;&gt;all&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;location&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;^~&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;/Safari1261/&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;c1&#34;&gt;# Google Gemini API 服务代理
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;&lt;/span&gt;         &lt;span class=&#34;kn&#34;&gt;proxy_ssl_server_name&lt;/span&gt; &lt;span class=&#34;no&#34;&gt;on&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;c1&#34;&gt;#proxy_pass  https://api.openai.com;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;&lt;/span&gt;         &lt;span class=&#34;kn&#34;&gt;proxy_pass&lt;/span&gt;  &lt;span class=&#34;s&#34;&gt;https://generativelanguage.googleapis.com/&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;kn&#34;&gt;proxy_buffering&lt;/span&gt; &lt;span class=&#34;no&#34;&gt;off&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;         &lt;span class=&#34;kn&#34;&gt;client_max_body_size&lt;/span&gt;    &lt;span class=&#34;mi&#34;&gt;300m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;配置说明&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
