
What is chatGPT?
ChatGPT is a natural language processing tool developed by the AI research company OpenAI.
Released in Novermber 2022. ChatGPT allows user to ask it questions using conversational, or
natural, language. The language model can answer questions and assist you with tasks like
composing emails, essays, and code.
allows a user to ask it questions using conversational, or natural, language
Now let’s back to our topic.
Here are the steps using which we can easily integergrate Chatgpt’s API in your rails application.
1. Install Gem
First of all, we need to add openAI gem into our gemfile. File: Gemfile
gem <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"ruby-openai"</span></span
gem <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"ruby-openai"</span></span
gem <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"ruby-openai"</span></span
Then, run bundle install.
2. ChatGPT-related configuration.
Once you’ve installed the gem, we need to set up openAI API key
2.1 Where do we find openAI key?
Get your API key from https://beta.openai.com/account/api-keys
NOTE: If you are not registered/login into this URL then first do that.
We can pass the API key directly to a new client, like
client <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span><span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">access_token</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"your_key"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span
client <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span><span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">access_token</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"your_key"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span
client <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span><span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">access_token</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"your_key"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span
2.2. Added into our app
let’s create a ChatGPT client in our Rails app.
To do this just follow the suggested steps.
Create a new route in our app, like so
get <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'/chat_gpt'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">to</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'communication'</span></span
get <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'/chat_gpt'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">to</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'communication'</span></span
get <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'/chat_gpt'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">to</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'communication'</span></span
Now create communication_controller.rb file.
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
2.3 Now let’s work on the view part.
NOTE: Here i have simply implemented the view part, You can make it more attractive if
you want.
FILE: views/communication/chat_gpt.html.erb
<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span>Send a message<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">/</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> form_tag<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span>chat_gpt_path<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:method</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=></span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:get</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-do" style="box-sizing: border-box; color: rgb(0, 119, 170);">do</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> <%= text_field_tag 'question', nil, placeholder: 'your quetsion please' %></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> # I AM TAKING RESPONSES ON THE SAME PAGE. <div class="anwser"></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'text'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token keyword keyword-if" style="box-sizing: border-box; color: rgb(0, 119, 170);">if</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> </div></span></span
<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span>Send a message<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">/</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> form_tag<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span>chat_gpt_path<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:method</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=></span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:get</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-do" style="box-sizing: border-box; color: rgb(0, 119, 170);">do</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> <%= text_field_tag 'question', nil, placeholder: 'your quetsion please' %></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> # I AM TAKING RESPONSES ON THE SAME PAGE. <div class="anwser"></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'text'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token keyword keyword-if" style="box-sizing: border-box; color: rgb(0, 119, 170);">if</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> </div></span></span
<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span>Send a message<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">/</span>h2<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> form_tag<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span>chat_gpt_path<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:method</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=></span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:get</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-do" style="box-sizing: border-box; color: rgb(0, 119, 170);">do</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> <%= text_field_tag 'question', nil, placeholder: 'your quetsion please' %></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> # I AM TAKING RESPONSES ON THE SAME PAGE. <div class="anwser"></span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">%=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'text'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token keyword keyword-if" style="box-sizing: border-box; color: rgb(0, 119, 170);">if</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">%> </div></span></span
If you want data into Json form
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "\n\nRuby is a general<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>purpose<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> object<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>oriented programming language<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is dynamic<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> reflective<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> offers an intuitive syntax<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> Ruby is commonly used to create web applications that are scalable<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> robust <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> secure<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is also used to develop back<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span><span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> systems <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> <span class="token constant" style="box-sizing: border-box; color: rgb(153, 0, 85);">API</span> services<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>"<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "\n\nRuby is a general<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>purpose<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> object<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>oriented programming language<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is dynamic<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> reflective<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> offers an intuitive syntax<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> Ruby is commonly used to create web applications that are scalable<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> robust <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> secure<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is also used to develop back<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span><span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> systems <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> <span class="token constant" style="box-sizing: border-box; color: rgb(153, 0, 85);">API</span> services<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>"<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "\n\nRuby is a general<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>purpose<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> object<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span>oriented programming language<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is dynamic<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> reflective<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> offers an intuitive syntax<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> Ruby is commonly used to create web applications that are scalable<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> robust <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> secure<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span> It is also used to develop back<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">-</span><span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> systems <span class="token keyword keyword-and" style="box-sizing: border-box; color: rgb(0, 119, 170);">and</span> <span class="token constant" style="box-sizing: border-box; color: rgb(153, 0, 85);">API</span> services<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>"<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
Here are some filters
1. How to use ChatGPT for the name generator?
As we know that we can use chatGPT in manyexamples. Here is an example of aBusinessName Generator.Using that we can get our business name with the help of chatGPT. So for that, we need set prompts like it. Let’s implement this into the above example
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'generate a Business Name as domain\n\nKeywords:'</span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> prompt<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'generate a Business Name as domain\n\nKeywords:'</span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> prompt<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
<span class="token keyword keyword-class" style="box-sizing: border-box; color: rgb(0, 119, 170);">class</span> <span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">CommunicationController</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);"><</span> ActionController<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span>Base skip_before_action <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">:verify_authenticity_token</span> <span class="token keyword keyword-def" style="box-sizing: border-box; color: rgb(0, 119, 170);">def</span> <span class="token method-definition" style="box-sizing: border-box;"><span class="token function" style="box-sizing: border-box; color: rgb(221, 74, 104);">chat_gpt</span></span> <span class="token keyword keyword-return" style="box-sizing: border-box; color: rgb(0, 119, 170);">return</span> <span class="token keyword keyword-unless" style="box-sizing: border-box; color: rgb(0, 119, 170);">unless</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>present<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">?</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> OpenAI<span class="token double-colon punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">::</span><span class="token class-name" style="box-sizing: border-box; color: rgb(221, 74, 104);">Client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span><span class="token keyword keyword-new" style="box-sizing: border-box; color: rgb(0, 119, 170);">new</span> <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#(access_token: "your_key")</span> prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'generate a Business Name as domain\n\nKeywords:'</span></span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span> <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@client</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">.</span>completions<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">(</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">parameters</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">model</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text-davinci-003"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">prompt</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> prompt<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">max_tokens</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">2000</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">)</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span> render json<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token symbol" style="box-sizing: border-box; color: rgb(153, 0, 85);">text</span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token variable" style="box-sizing: border-box; color: rgb(238, 153, 0);">@response</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'choices'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token keyword keyword-end" style="box-sizing: border-box; color: rgb(0, 119, 170);">end</span
RESPONSE:
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"\n\n1. nYogafashion.com"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"\n\n1. nYogafashion.com"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">{</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"text"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"\n\n1. nYogafashion.com"</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"index"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token number" style="box-sizing: border-box; color: rgb(153, 0, 85);">0</span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"logprobs"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> null<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">,</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"finish_reason"</span></span><span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> <span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">"stop"</span></span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span> <span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">}</span
2. Count-related filter
If you want 5 names then just set this prompt.
prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> "generate a <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#{params['count']} Business Name as</span> domain\n\nKeywords<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span
prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> "generate a <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#{params['count']} Business Name as</span> domain\n\nKeywords<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span
prompt <span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">=</span> "generate a <span class="token comment" style="box-sizing: border-box; color: rgb(112, 128, 144);">#{params['count']} Business Name as</span> domain\n\nKeywords<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">:</span> "<span class="token operator" style="box-sizing: border-box; color: rgb(154, 110, 58); background: rgba(255, 255, 255, 0.5);">+</span> params<span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">[</span><span class="token string-literal" style="box-sizing: border-box;"><span class="token string" style="box-sizing: border-box; color: rgb(102, 153, 0);">'question'</span></span><span class="token punctuation" style="box-sizing: border-box; color: rgb(153, 153, 153);">]</span
And many more..
Yeah, Your app is now ready for checking. Now just start the server and check your chatGPT
responses on the same page.
Do you need any help or advice regarding ROR we’d be happy to update or create new ones for
you.
Get in touch with us.
Reader guide
Explore this topic
Explore this topic
Use the links below to jump into next reading without leaving the article flow.
Blog categories
Recent posts
Rails CSV Export: Why Large Data Exports Fail and How to Build Them Properly
7 min
Rails Background Jobs: Why Customers Shouldn’t Wait for Work That Can Run Later
6 min
Multi-Tenant Rails: 4 Data Isolation Problems SaaS Teams Need to Prevent
5 min
What Breaks When an AI-Generated MVP Goes to Production
5 min
Similar Blogs
Explore Similar Blogs
Explore Similar Blogs
Learn how AI is transforming meetings, notes,
and team productivity.
Learn how AI is transforming meetings, notes,
and team productivity.

next step
Tell us what you are trying to build.
No spec required. Send a paragraph, an old repo link, or a screenshot of the system you are replacing. A senior Rails engineer will review it and reply with real feedback.




next step
Tell us what you are trying to build.
No spec required. Send a paragraph, an old repo link, or a screenshot of the system you are replacing. A senior Rails engineer will review it and reply with real feedback.




next step
Tell us what you are trying to build.
No spec required. Send a paragraph, an old repo link, or a screenshot of the system you are replacing. A senior Rails engineer will review it and reply with real feedback.






