¿ChatGPT puede reemplazar a los motores de búsqueda?

ChatGPT puede completar la tarea perfectamente para algunas preguntas sencillas. Pero cuando le pedí que escribiera un artículo completo para ver si podía reemplazarme por escrito, estaba seguro de que no podría reemplazar completamente a los humanos.

Pero podemos utilizar más orientación para que la IA funcione para nosotros en nuestro flujo de trabajo diario, por lo que este artículo analizará cómo utilizar ChatGPT de forma eficaz. La idea es comenzar con casos de uso cotidianos simples y luego pasar a etapas más complejas. Finalmente, veamos si ChatGPT puede reemplazar a los motores de búsqueda y brindarnos la información que necesitamos todos los días.

Migrar de Google a ChatGPT

Google se utiliza para mostrar preguntas similares a otras personas, mientras que ChatGPT se utiliza para responder sus preguntas exactas.

Como la mayoría de la gente, cuando no sé algo, lo busco en Google. El flujo de trabajo estándar es ir a Google, hacer clic en el resultado superior y leer hasta que sienta que tiene la respuesta correcta. Si tiene suerte, alguien ya le hizo la misma pregunta y podremos obtener la respuesta directamente. Pero la mayoría de las veces, necesitamos observar muchos resultados y unir las respuestas.

Hagamos una pregunta muy simple:

Estos resultados de búsqueda de Google básicamente responden a la pregunta: "Cómo eliminar elementos de una tabla de DynamoDB". A continuación, debemos reescribir la búsqueda en "Cómo agregar elementos a una tabla de DynamoDB". Luego debemos reconstruir las respuestas nosotros mismos para obtener el resultado final.

Entonces, ¿qué pasa con ChatGPT?

ChatGPT proporciona descripciones y código exacto para Python y AWS CLI. Esto es lo que dijimos anteriormente: Google hace todo lo posible para devolver contenido similar a mi pregunta y ChatGPT hace todo lo posible para generar respuestas.

ChatGPT automatiza los resultados principales y filtra las respuestas (las que cree que son las respuestas, por supuesto).

Para una pregunta tan simple

  • ¿Puedo obtener la misma respuesta a través de Google? Sí.
  • ¿Puedo obtener respuestas más rápido a través de ChatGPT? No hay problema.
  • ¿Puede la inteligencia artificial reemplazar mi trabajo? De ninguna manera
  • ¿Puede la IA aumentar mi velocidad?

¿Qué pasa con un problema más complicado?

Emparejar programación con ChatGPT

Necesitamos completar las siguientes tareas.

Utilice Databricks para investigar datos en S3. Databricks depende en gran medida de SQL, lo que significa realizar múltiples uniones de tablas, condiciones y agrupaciones complejas.

ChatGPT seguramente responderá preguntas simples como "cómo unir dos tablas en SQL". Pero puedes hacer más con ChatGPT, necesitas brindarle información contextual.

La respuesta es la siguiente:

ChatGPT puede generar una respuesta basada en la información proporcionada.

Como puede ver, ChatGPT adapta su respuesta según el contexto proporcionado, lo que va mucho más allá de lo que Google puede hacer. Ningún resultado de búsqueda dará el código anterior. Entonces, incluso si tenemos la respuesta, todavía necesitamos unir el contenido de varios artículos diferentes.

ChatGPT considera el contexto de toda la conversación al formular respuestas, por lo que cuanto más profundizamos en una pregunta, más precisa será la respuesta que obtendremos:

ChatGPT recuerda conversaciones anteriores, al igual que la programación en pareja. Con nuevos aportes, puede retroceder a los pasos anteriores o probar una ruta experimental. Pero ChatGPT también comete errores, al igual que los humanos, por lo que aún debemos tomar el juicio final manualmente y solicitar a ChatGPT.

Si necesita utilizar ChatGPT para crear una solución compleja. Debe comenzar de manera simple y aumentar gradualmente la complejidad.

Ahora puedo usar ChatGPT para responder preguntas sencillas o crear pequeños fragmentos de código. ¿Se puede llegar más lejos?

Lluvia de ideas con ChatGPT

Un gran ejemplo aquí es el uso de ChatGPT para proporcionar ideas adicionales para un proyecto.

Por ejemplo: Cómo transferir automáticamente archivos de licencia de programa a un entorno de desarrollo remoto

ChatGPT brindó una respuesta sólida que explica el proceso de carga y descarga de archivos, las políticas de AWS IAM necesarias para administrar AWS Secrets Manager y más. Cada sección incluye código de muestra y explicaciones.

Luego le hice a ChatGPT una pregunta más general:

También sugiere ocho cosas más a considerar: permisos, costo, cifrado, rotación de claves, zonas, políticas de recursos, control de versiones de claves y configuración inicial de la cuenta. Cada artículo tiene un párrafo que resume el tema.

Es posible que no hayamos pensado en algunas de estas preguntas, entonces, ¿podríamos utilizar ChatGPT como socio para la lluvia de ideas?

 I am a software engineer at a software company with a public REST API.  I want to start stress-testing it, and I am evaluating several frameworks.  What are the important features I should be looking for?
 
 I am a software company that runs a SaaS product.  I need to add SSO to my product so each company can log in with its authentication platform.  I’m trying to compare tools like Auth0 and WorkOS.  What are some important features to consider?
 
 I’m a software engineer at a company building an enterprise (self-hosted) application.  In my case, the customers manage the entire product themselves without me.  I am worried about the maintenance burden of supporting my app long term.  What should I consider?

Estas preguntas anteriores arrojan respuestas muy útiles, lo cual es un buen ejemplo ya que no se pueden buscar en Google.

Es posible utilizar ChatGPT para generar ideas sobre trabajos que quizás nunca realicemos en nuestra vida.

Utilice ChatGPT para escribir código complejo

ChatGPT es definitivamente la herramienta equivocada cuando se trata de escribir código de repositorio personalizado (privado) (así que usaré GitHub Copilot en su lugar). Pero cuando se trata de escribir integraciones dirigidas a API públicas, ChatGPT sobresale.

Si lo piensas bien, tiene sentido. Debido a que ChatGPT no puede acceder a su base de código personalizado, Copilot escaneará el código local.

Le hicimos a ChatGPT una pregunta sobre la API pública:

Aquí está el código que genera:

 import requests
 import os
 
 GITHUB_TOKEN = 'YOUR_GITHUB_TOKEN'
 ASANA_TOKEN = 'YOUR_ASANA_TOKEN'
 ASANA_PROJECT_ID = 'YOUR_ASANA_PROJECT_ID'
 GITHUB_REPOS = ["user/repo1", "user/repo2", ...]  # List your repos here
 
 HEADERS_GITHUB = {
     'Authorization': f'token {GITHUB_TOKEN}',
     'Accept': 'application/vnd.github.v3+json',
 }
 
 HEADERS_ASANA = {
     'Authorization': f'Bearer {ASANA_TOKEN}',
     'Accept': 'application/json',
     'Content-Type': 'application/json',
 }
 
 def fetch_github_issues(repo):
     url = f"https://api.github.com/repos/{repo}/issues"
     response = requests.get(url, headers=HEADERS_GITHUB)
     return response.json()
 
 def find_or_create_asana_section(project_id, name):
     # Check if section exists
     sections_url = f"https://app.asana.com/api/1.0/projects/{project_id}/sections"
     response = requests.get(sections_url, headers=HEADERS_ASANA)
     for section in response.json().get("data", []):
         if section["name"] == name:
             return section["gid"]
     
     # Create new section
     data = {
         "data": {
             "name": name,
         }
     }
     response = requests.post(sections_url, headers=HEADERS_ASANA, json=data)
     return response.json()["data"]["gid"]
 
 def create_asana_task(project_id, section_gid, issue):
     url = f"https://app.asana.com/api/1.0/tasks"
     data = {
         "data": {
             "projects": [project_id],
             "memberships": [
                 {
                     "project": project_id,
                     "section": section_gid,
                 }
             ],
             "name": issue["title"],
             "notes": issue["body"],
         }
     }
     requests.post(url, headers=HEADERS_ASANA, json=data)
 
 def main():
     for repo in GITHUB_REPOS:
         issues = fetch_github_issues(repo)
         section_name = repo.split("/")[-1]  # Assuming you want the repo name as the section name
         section_gid = find_or_create_asana_section(ASANA_PROJECT_ID, section_name)
         for issue in issues:
             create_asana_task(ASANA_PROJECT_ID, section_gid, issue)
 
 if __name__ == "__main__":
     main()

Se ve muy bien. Aumentemos la dificultad y dejemos que ChatGPT cree un pequeño programa de software con las siguientes restricciones:

No ingreso ningún código. Sólo se podrán ejecutar aquellos generados por ChatGPT. Luego, los errores serán corregidos por el propio ChatGPT.

Al principio, ChatGPT hizo un gran trabajo. Es fácil escribir un cliente RESTful. Le dije a ChatGPT que necesitaba más declaraciones de depuración y agregó declaraciones impresas en todo el código. También es bueno encapsular llamadas a funciones en otras bibliotecas.

Pero se me ocurrió que descargar y volver a cargar archivos grandes llevaría mucho tiempo, así que le pregunté a ChatGPT si podía envolverlos visualmente con una barra de progreso en la línea de comando. Esto es lo que hace:

Un poco hinchado, pero funciona.

Cuando se le pidió a ChatGPT que refactorizara el código y agregara abstracciones, las respuestas recibidas contenían errores ortográficos y lógicos. Por lo tanto, lleva mucho tiempo comunicarse y modificar con ChatGPT (como se mencionó anteriormente, para las pruebas, todos los códigos están escritos por ChatGPT)

Para este problema, el motivo de la conjetura a ciegas es que ChatGPT solo tiene un tiempo de cálculo limitado para cada pregunta. Cuanto más complicada es la situación, ChatGPT no puede perfeccionar completamente su respuesta y simplemente arroja un resultado sin modificar, posiblemente debido a restricciones de tamaño del token.

ChatGPT es bueno escribiendo funciones individuales, pero falla rápidamente cuando se trata de abstracciones o métodos múltiples.

Pero para ChatGPT, un muy buen rendimiento es que puede ayudarnos a convertir códigos, como por ejemplo:

Traducir el código Python a Typecript. Convertir el script de shell de Linux al script cmd de Windows

Resumir

ChatGPT se puede utilizar para mejorar sus capacidades, no para reemplazar su trabajo

Es un truco genial incorporar ChatGPT en tu rutina diaria, y tal vez funcione para los flujos de trabajo de otras personas, pero no para el mío. Porque algunos trabajos son demasiado complejos o demasiado especializados para que funcionen las herramientas externas de IA.

Finalmente, hay otro problema: los datos de ChatGPT se actualizan en 2022, por lo que no hay datos recientes, lo que básicamente no es útil para industrias que a menudo requieren los datos más recientes.

Así que volvamos a nuestro título: la lluvia de ideas y el emparejamiento de programadores con código simple es un muy buen escenario de aplicación que puede mejorar nuestra eficiencia, pero no puede reemplazar a Google. Además del tiempo, valoramos más cierta información.

https://avoid.overfit.cn/post/cb049c14e06441f98063d8d478ff1474

Autor: Elliot Graebert

Supongo que te gusta

Origin blog.csdn.net/m0_46510245/article/details/133066110
Recomendado
Clasificación