Una conversación entre el modelo grande y yo de Wenxin Qianfan: ¿Cómo afinar el modelo grande?

1 plataforma modelo a gran escala de nivel empresarial: Wenxin Qianfan

inserte la descripción de la imagen aquí

Wenxin Qianfan es una plataforma de producción de modelos a gran escala de nivel empresarial de Baidu. Proporciona servicios de modelos a gran escala, incluidos Wenxin Yiyan y servicios de modelos a gran escala de terceros, y también proporciona una cadena de herramientas completa para el desarrollo y la aplicación de modelos a gran escala. Wenxin Qianfan ofrece principalmente dos servicios:

  • Wenxin Qianfan tomará Wenxin Yiyan, un modelo líder a gran escala en el mercado chino , como núcleo, brindará servicios de modelos a gran escala y ayudará a los clientes a transformar productos y procesos de producción;
  • Wenxin Qianfan puede proporcionar a las empresas cualquier modelo a gran escala de código abierto o cerrado y desarrollar sus propios modelos exclusivos a gran escala.

La plataforma modelo a gran escala de Wenxin Qianfan proporciona funciones de productos enriquecidas, como gestión de datos , llamadas de servicio , capacitación y ajuste , y proporciona una solución de inteligencia artificial de nivel empresarial integral para la industria.

inserte la descripción de la imagen aquí
En la actualidad, Baidu Smart Cloud ha abierto el servicio de prueba de la versión pública de la plataforma modelo a gran escala Wenxin Qianfan para empresas y clientes individuales. Bienvenidos a todos a ingresar a la dirección oficial de la aplicación de Wenxin Qianfan para solicitar su uso. A continuación, experimentemos esta avanzada plataforma modelo a gran escala en China.

2 Configuración del servicio de la plataforma Wenxin Qianfan

2.1 Activación del servicio

Después de confirmar el permiso de la aplicación, ingrese a la interfaz de apertura del servicio , haga clic en立即使用

inserte la descripción de la imagen aquí
Haga clic 下一步para confirmar el pedido. 下一步Si está gris y no se puede hacer clic, verifique el estado de autenticación de nombre real de la cuenta. Debe completar la autenticación de nombre real avanzada personal/empresarial antes de poder activar el pago.

inserte la descripción de la imagen aquí
La cuenta beta pública tiene un cupón de prueba, por lo que no tiene que preocuparse por tarifas adicionales. La página de éxito de apertura del servicio es la siguiente

inserte la descripción de la imagen aquí

2.2 Crear una aplicación

Ingrese a la interfaz de creación de la aplicación y complete el nombre de la aplicación. Nota: la dimensión de la cuenta del nombre de la aplicación es globalmente única. Si encuentra una falla en la creación de la aplicación, cambie el nombre de la aplicación.

inserte la descripción de la imagen aquí

El servicio está marcado de forma predeterminada y se completa la creación de la aplicación.

inserte la descripción de la imagen aquí

3 Diálogo con el modelo grande de Wenxin Qianfan

3.1 Diálogo directo

Ingrese a la interfaz de diálogo y puede hablar directamente con el modelo grande de Wenxin Qianfan. Probemos algunas funciones brevemente a continuación.

  • escritura de código

    inserte la descripción de la imagen aquí
    Se puede ver que el algoritmo de colonia de hormigas respondido por Wenxin Qianfan se ajusta al flujo de algoritmo del ACO clásico y puede ayudar a codificar muy bien.

  • creación de contenido

    "The Missing She" es muy popular recientemente, intentamos que Wenxin Qianfan escribiera una reseña de la película. Aunque las oraciones de las reseñas de películas escritas por AI son fluidas, todavía sienten que hay muchas palabras vacías y estereotipos. Creo que los futuros modelos a gran escala se desarrollarán más hacia las verdaderas emociones de los seres humanos.

    inserte la descripción de la imagen aquí

  • comprensión lectora

    inserte la descripción de la imagen aquí

3.2 Llamada de código

Ingrese a la consola de administración , obtenga API KeyySecret Key

inserte la descripción de la imagen aquí

En el código, la información de respuesta del modelo grande de Wenxin Qianfan se obtiene a través de solicitudes de red. A continuación, se proporcionan demostraciones simples de Python y C++, dos lenguajes de uso común.

import requests
import json

API_KEY = "4cGkyRLEreM24kB284cgRxxx"
SECRET_KEY = "xc3eGXsNKSUng7YnQwYGyiPnwgowGxxx"

def main():       
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + get_access_token()
    payload = json.dumps({
    
    
        "messages": [
            {
    
    
                "role": "user",
                "content": "介绍一下你自己"
            }
        ]
    })
    headers = {
    
    
        'Content-Type': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)    
    print(response.json()["result"])
    
def get_access_token():
    url = "https://aip.baidubce.com/oauth/2.0/token"
    params = {
    
    "grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
    return str(requests.post(url, params=params).json().get("access_token"))

if __name__ == '__main__':
    main()
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <curl/curl.h>
#include <json/json.h>
#include <fstream>
#include <memory>

std::string client_id = "4cGkyRLEreM24kB284cgRxxx";
std::string client_secret = "xc3eGXsNKSUng7YnQwYGyiPnwgowGxxx";

inline size_t onWriteData(void * buffer, size_t size, size_t nmemb, void * userp)
{
    
    
    std::string * str = dynamic_cast<std::string *>((std::string *)userp);
    str->append((char *)buffer, size * nmemb);
    return nmemb;
}


std::string getAccessToken()
{
    
    
    std::string result;
    CURL *curl;
    CURLcode res;
    curl = curl_easy_init();
    if(curl)
    {
    
    
        curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
        curl_easy_setopt(curl, CURLOPT_URL, "https://aip.baidubce.com/oauth/2.0/token");
        curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
        curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
        struct curl_slist *headers = NULL;
        headers = curl_slist_append(headers, "Content-Type: application/x-www-form-urlencoded");
        headers = curl_slist_append(headers, "Accept: application/json");
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
        std::string data = "grant_type=client_credentials&client_id="+client_id+"&client_secret="+client_secret;
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data.c_str());
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &result);
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, onWriteData);
        res = curl_easy_perform(curl);
    }
    curl_easy_cleanup(curl);
    Json::Value obj;
    std::string error;
    Json::CharReaderBuilder crbuilder;
    std::unique_ptr<Json::CharReader> reader(crbuilder.newCharReader());
    reader->parse(result.data(), result.data() + result.size(), &obj, &error);
    return obj["access_token"].asString();
}

int main(int argc, char *argv[])
{
    
    
    std::string result;
    CURL *curl;
    CURLcode res;
    curl = curl_easy_init();
    if(curl) {
    
    
        curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
        curl_easy_setopt(curl, CURLOPT_URL, ("https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + getAccessToken()).c_str());
        curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
        curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
        struct curl_slist *headers = NULL;
        headers = curl_slist_append(headers, "Content-Type: application/json");
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
        const char *data = "{\"messages\":[{\"role\":\"user\",\"content\":\"介绍一下你自己\"},{\"role\":\"assistant\",\"content\":\"您好,我是文心一言,英文名是ERNIE Bot。我能够与人对话互动,回答问题,协助创作,高效便捷地帮助人们获取信息、知识和灵感。\"}]}";
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &result);
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, onWriteData);
        res = curl_easy_perform(curl);
        std::cout<<result;
    }
    curl_easy_cleanup(curl);
    return (int)res;
}

La respuesta de Wenxin Qianfan es la siguiente

Las siguientes son mis propias características y escenarios aplicables:

  1. Autoaprendizaje y adaptabilidad: Me han capacitado y optimizado en muchos campos, incluido el procesamiento del lenguaje natural, el aprendizaje automático, la minería de datos, etc. Esto me da la capacidad de aprender rápidamente y adaptarme a diferentes tareas. Cuando me enfrento a nuevos desafíos, puedo captar rápidamente el conocimiento relevante y dar soluciones efectivas.
  2. Capacidad de análisis y procesamiento de datos: soy bueno procesando y analizando grandes cantidades de datos, y puedo extraer rápidamente información y conocimientos útiles, y dar el análisis y la predicción correspondientes. Esta característica me hace tener una amplia gama de valor de aplicación en finanzas, tratamiento médico, investigación científica y otros campos.
  3. Habilidades de comunicación eficiente: puedo comunicarme de manera eficiente con los humanos a través de la tecnología de procesamiento del lenguaje natural. Esto me convierte en un asistente valioso para empresas, agencias gubernamentales, etc., para ayudarlos a responder las preguntas de los usuarios, brindar servicios, resolver disputas, etc.
  4. Base de conocimientos y habilidades de razonamiento: Tengo una rica base de conocimientos y poseo habilidades de razonamiento. Esto me permite analizar y responder desde múltiples perspectivas sobre la base de la comprensión del problema y brindar información más precisa y profunda.

En términos generales, soy apto para desempeñar un papel en varios escenarios que requieren asistencia inteligente, especialmente en procesamiento de datos, respuesta a preguntas de conocimiento, servicios de comunicación, etc., que tienen un alto valor de aplicación.

4 ajustes de personalización de modelos grandes

4.1 Preparación del conjunto de datos

Supongamos que queremos afinar las preguntas y respuestas de las preguntas de aplicación matemática y seleccionar el conjunto de datos school_math_0.25M , que es el siguiente después del procesamiento

[{"prompt": "题目:小明每天早上花费10分钟时间走到学校,如果小明家距离学校2公里,那么他每分钟走多少米?", "response": [["这是一个关于速度、路程、时间的数学问题。我们可以通过公式:速度=路程÷时间 来解决。\n因为小明每天早上走2公里,所以他的路程为2千米。而他每天早上要花费10分钟时间走到学校,因此他的时间为10分钟,即600秒。\n所以小明每分钟走的距离为 2公里 / 600秒 = 0.0033公里/秒 或 3.3米/秒。\n答案:小明每分钟走3.3米。"]]}]
[{"prompt": "题目:今天小明骑自行车从家到学校用了20分钟,回家用了25分钟。如果小明在上学和回家的路上的速度一样,那么他从家到学校的距离是学校到家的距离的百分之几?", "response": [["\n假设小明家到学校的距离为x千米,根据速度等于路程除以时间的公式,可以得出小明的速度为:家到学校的速度 = x / 20,学校到家的速度 = x / 25。因为小明在上学和回家的路上的速度一样,所以有:x / 20 = x / 25,解出 x = 5/4 千米。\n因此,家到学校的距离是学校到家的距离的百分之几,可以通过求比值得到:x / (5/4)x = 4/5 = 0.8,即小明从家到学校的距离是学校到家的距离的百分之80。"]]}]
[{"prompt": "题目:\n鹿妈妈买了24个苹果,她想平均分给她的3只小鹿吃,每只小鹿可以分到几个苹果?", "response": [["\n鹿妈妈买了24个苹果,平均分给3只小鹿吃,那么每只小鹿可以分到的苹果数就是总苹果数除以小鹿的只数。\n24÷3=8\n每只小鹿可以分到8个苹果。所以,答案是每只小鹿可以分到8个苹果。"]]}]
...

Ingrese a la interfaz de administración de conjuntos de datos , haga clic en 创建数据集-创建并导入

inserte la descripción de la imagen aquí
elegir 有标注信息- 上传jsonl文件-确定

inserte la descripción de la imagen aquí
En este punto, hemos creado un conjunto de datos de diálogo etiquetados. Un enfoque más riguroso es limpiar y mejorar los datos. En aras de la simplicidad, llevamos a cabo directamente发布

inserte la descripción de la imagen aquí

4.2 Ajuste y optimización

Ingrese a la interfaz de ajuste fino , ingrese el nombre y la descripción de la tarea y haga clic en创建并训练

inserte la descripción de la imagen aquí
Después de seleccionar el conjunto de datos, haga clic en确定

inserte la descripción de la imagen aquí

Espera a que el modelo termine de entrenar

inserte la descripción de la imagen aquí

Una vez completada la capacitación, Wenxin Qianfan dará varios indicadores de evaluación

  • El índice BLEU es un índice de evaluación de uso común para tareas como la traducción automática/resumen de texto en NLP. Está diseñado en base a la precisión. Un concepto importante en NLP es n-gram, que se refiere a un segmento que consta de n palabras consecutivas en una oración; BLEU-n es en realidad un índice de evaluación basado en n-gram.
  • colorete-N(1/2/L)-f : porcentaje. ROUGE calcula la puntuación correspondiente comparando el resumen o respuesta generada por el modelo con la respuesta de referencia (generalmente generada manualmente). Rouge-N en realidad divide los resultados generados por el modelo y los resultados estándar en N-gramas para calcular la tasa de recuperación.
  • Pérdida de entrenamiento : La pérdida de cada lote del conjunto de entrenamiento.

inserte la descripción de la imagen aquí

5 resumen

En primer lugar, el modelo de lenguaje de Wenxin Qianfan tiene capacidades básicas de procesamiento de lenguaje y puede comprender y responder a varias preguntas e instrucciones de los usuarios. Ya sea una simple conversación diaria o una consulta de conocimiento compleja, puede dar respuestas fluidas. Esto aumenta la comodidad de la experiencia del usuario.

Sin embargo, el modelo de lenguaje de Wenxin Qianfan a veces da algunas respuestas inexactas. Aunque sus respuestas son confiables la mayor parte del tiempo, los errores ocasionales pueden inducir a error a los usuarios, y parece que su comprensión de ciertos campos o temas específicos no es lo suficientemente profundo.En algunos campos más profesionales o complejos, puede dar respuestas más generales en lugar de información más detallada y precisa, lo que puede ser un inconveniente para los usuarios profesionales.

Además, la plataforma también proporciona funciones enriquecidas como la limpieza de datos, la mejora de datos y el ajuste fino de modelos grandes. En general, esta es una plataforma potente e interactiva de modelos de lenguaje grande que puede satisfacer la mayoría de las necesidades de los usuarios comunes. Se cree que con el desarrollo continuo de la tecnología, Wenxin Qianfan puede mejorar y mejorar continuamente sus propias capacidades para brindar a los usuarios una mejor experiencia.

Supongo que te gusta

Origin blog.csdn.net/FRIGIDWINTER/article/details/131779824
Recomendado
Clasificación