Reactive Machines

Lungiselela izimpendulo zombuzo ngempendulo yomsebenzisi usebenzisa i-Amazon Bedrock eshumekeze ukushumeka nokudutshulwa okumbalwa

Ukwenza ngcono ikhwalithi yokuphendula kwemibuzo yomsebenzisi kubalulekile kwizicelo eziqhutshwa yi-AI, ikakhulukazi labo abagxile ekwanelisekeni komsebenzisi. Isibonelo, umsizi osuselwa ku-HR Chat kufanele alandele ngokuqinile izinqubomgomo zenkampani futhi aphendule esebenzisa ithoni ethile. Ukuphambuka kusuka kulokho kungalungiswa ngempendulo evela kubasebenzisi. Lokhu okuthunyelwe kukhombisa ukuthi i-Amazon Bedrock, ehlanganiswe nedatha yempendulo yomsebenzisi kanye nokudutshulwa okumbalwa, kunganciphisa izimpendulo zokwaneliseka okuphezulu komsebenzisi. Ngokusebenzisa i-Amazon Titan Umbhalo Eshuddings V2, sibonisa ukuthuthuka okubalulekile ngokwezibalo ngekhwalithi yokuphendula, okwenza kube yithuluzi elibalulekile lezicelo ezifuna izimpendulo ezinembile nezenziwe ngezifiso.

Izifundo zakamuva ziveze inani lempendulo nokuncipha ekucobeni izimpendulo ze-AI. Ukusebenza okusheshayo ngempendulo yabantu kuhlongoza indlela ehlelekile yokufunda kwimpendulo yomsebenzisi, ukuyisebenzisa kumamodeli we-itaratively amamodeli wokuqondanisa okuthuthukile nokuqina. Ngokufanayo, ukusebenza kwe-Black-Box Prompt Optimization: Ukuvumelanisa amamodeli amakhulu ezilimi ngaphandle kokuqeqeshwa okuyisibonelo okubonisa ukuthi ukubuyiselwa kwemali okucatshangwayo kukhulisa ukufundwa okuvunyelwe okumbalwa ngokuhlanganisa isimo esifanele, okunika amandla ikhwalithi engcono yokubonisana kanye nekhwalithi yempendulo. Ukwakha kule mibono, umsebenzi wethu usebenzisa i-Amazon Titan Umbhalo oshumekile v2 imodeli ukwenza kahle izimpendulo ezisetshenziswa ngempendulo yomsebenzisi etholakalayo kanye nokudutshulwa okumbalwa, ukuzuza ukuthuthuka okubaluleke kakhulu kwizibalo ekwanelisekeni komsebenzisi. I-Amazon Bedrock isivele inikezela ngesici esizenzakalelayo sokusebenza kahle kokuzivumelanisa nezimo ngokuzenzakalela nokwandisa ukukhuthaza ngaphandle kokufaka okungeziwe komsebenzisi. Kulesi sipongo sebhulogi, sibonisa ukuthi singawasebenzisa kanjani imitapo yolwazi ye-OSS ngokwenza kahle ngokwezifiso ngokususelwa kwimpendulo yomsebenzisi kanye nokudutshulwa okumbalwa.

Sithuthukise isixazululo esisebenzayo sisebenzisa i-Amazon Bedrock ethuthukisa ngokuzenzakalelayo izimpendulo zosizo lwezingxoxo ngokususelwa kwimpendulo yomsebenzisi. Lesi sixazululo sisebenzisa ukushumeka nokushumpuka okumbalwa. Ukukhombisa ukusebenza kwekhambi, sasebenzisa idatha yempendulo yomsebenzisi etholakala emphakathini. Kodwa-ke, lapho usebenzisa ngaphakathi enkampanini, imodeli ingasebenzisa idatha yayo yempendulo enikezwe abasebenzisi bayo. Nge-Dataset yethu yokuhlola, ikhombisa ukwanda okungu-3.67% kwizikolo zokweneliseka komsebenzisi. Izinyathelo ezibalulekile zifaka:

  1. Buyisa idatha yempendulo yomsebenzisi etholakala esidlangalaleni (yalesi sibonelo, idatha yempendulo enobunye ekugwingweni kobuso).
  2. Dala ukushumeka kwemibuzo ukuze kuthathwe izibonelo ezifanayo, usebenzisa i-Amazon Titan Umbhalo Smileddings.
  3. Sebenzisa imibuzo efanayo njengezibonelo zokudubula ezimbalwa ukukhiqiza okulungiselelwe okulungiselelwe.
  4. Qhathanisa ukukhuthaza okulungiselelwe ngokumelene nezingcingo eziqondile zolimi olukhulu (LLM).
  5. Qinisekisa ukuthuthuka kwekhwalithi yokuphendula usebenzisa i-T-test ebilindelwe amasampula.

Umdwebo olandelayo uwukubuka konke kohlelo.

Izinzuzo ezisemqoka zokusebenzisa i-Amazon Bedrock yilezi:

  • Ukuphathwa Kwezingqalasizinda Zezingqalasizinda – Hambisa kanye nesikali ngaphandle kokuphatha ingqalasizinda ye-Complex Machine Learning (ML)
  • Kuqiza kahle – Khokhela kuphela lokho okusebenzisayo nge-Amazon Bedrock Pay-as-you-go modeling pricing model
  • Enterprise-grade ezokuphepha – Sebenzisa izici zokuphepha ezi-AWS ezakhelwe ngaphakathi kanye nezimpawu zokuhambisana
  • Ukuhlanganiswa okuqondile – Hlanganisa izinhlelo zokusebenza ezikhona ngomthungo kanye namathuluzi omthombo ovulekile
  • Izinketho eziningi zemodeli – Finyelela amamodeli weSisekelo ahlukahlukene (FMS) wamacala ahlukile wokusebenzisa

Lezi zingxenye ezilandelayo zijula ​​kakhulu kulezi zinyathelo, ukuhlinzeka ngama-snippets wekhodi kusuka kubhukwana ukukhombisa inqubo.

Izimfuneko

Izimfuneko zokuqalisa zifaka i-akhawunti ye-AWS nge-Amazon Bedrock Access, Python 3.8 noma kamuva, futhi zilungiselelwe iziqinisekiso ze-Amazon.

Ukuqoqwa kwedatha

Silandile idatha yempendulo yomsebenzisi kusuka ekuggqeni kobuso, i-LLM-Blender / I-Unified-feedback. I-Dataset iqukethe izinkambu ezifana conv_A_user (umbuzo womsebenzisi) futhi conv_A_rating (Isilinganiso kanambambili; 0 kusho ukuthi umsebenzisi akayithandi futhi 1 kusho ukuthi umsebenzisi uyayithanda). Le khodi elandelayo ithola kabusha idatha futhi igxile emasimini adingekayo ukuze kunikezwe isizukulwane nokuphendula impendulo. Ingaqhutshwa e-Amazon SageMaker Notebook noma incwadi ye-jupyter enokufinyelela e-Amazon Bedrock.

# Load the dataset and specify the subset
dataset = load_dataset("llm-blender/Unified-Feedback", "synthetic-instruct-gptj-pairwise")

# Access the 'train' split
train_dataset = dataset["train"]

# Convert the dataset to Pandas DataFrame
df = train_dataset.to_pandas()

# Flatten the nested conversation structures for conv_A and conv_B safely
df['conv_A_user'] = df['conv_A'].apply(lambda x: x[0]['content'] if len(x) > 0 else None)
df['conv_A_assistant'] = df['conv_A'].apply(lambda x: x[1]['content'] if len(x) > 1 else None)

# Drop the original nested columns if they are no longer needed
df = df.drop(columns=['conv_A', 'conv_B'])

Isampula yedatha kanye nokushumeka isizukulwane

Ukuphatha inqubo ngempumelelo, sahlakaza imibuzo engama-6,000 kusuka kudatha. Sisebenzise i-Amazon Titan ETITAN EMBEDDINGS V2 ukudala ukushumeka kwale mibuzo, ukuguqula umbhalo kube yizethulo eziphezulu ezivumayo ezivumela ukuqhathanisa okufanayo. Bona ikhodi elandelayo:

import random import bedrock # Take a sample of 6000 queries 
df = df.shuffle(seed=42).select(range(6000)) 
# AWS credentials
session = boto3.Session()
region = 'us-east-1'
# Initialize the S3 client
s3_client = boto3.client('s3')

boto3_bedrock = boto3.client('bedrock-runtime', region)
titan_embed_v2 = BedrockEmbeddings(
    client=boto3_bedrock, model_id="amazon.titan-embed-text-v2:0")
    
# Function to convert text to embeddings
def get_embeddings(text):
    response = titan_embed_v2.embed_query(text)
    return response  # This should return the embedding vector

# Apply the function to the 'prompt' column and store in a new column
df_test['conv_A_user_vec'] = df_test['conv_A_user'].apply(get_embeddings)

Ukudutshulwa okumbalwa okushukumisela ukusesha okufanayo

Ngale ngxenye, sathatha izinyathelo ezilandelayo:

  1. Sampula imibuzo eyi-100 kusuka kudathabhethi yokuhlola. Ukuhlunga imibuzo eyi-100 kusisiza ukuba sisebenzise izilingo eziningi ukuze siqinisekise isixazululo sethu.
  2. Ukufana kwe-coskhote cosine (isilinganiso sokufana phakathi kwama-veectors amabili angewona ama-zero) phakathi kokushumeka kwalemibuzo yokuhlola kanye nokushumeka okugciniwe okungu-6,000.
  3. Khetha imibuzo ephezulu ye-K emibusheni yokuhlola ukuze isebenze njengezibonelo ezimbalwa zokudubula. Sibeka k = 10 ukulinganisela phakathi kokusebenza kwe-computational kanye nokwehlukahlukana kwezibonelo.

Bona ikhodi elandelayo:

# Step 2: Define cosine similarity function
def compute_cosine_similarity(embedding1, embedding2):
embedding1 = np.array(embedding1).reshape(1, -1) # Reshape to 2D array
embedding2 = np.array(embedding2).reshape(1, -1) # Reshape to 2D array
return cosine_similarity(embedding1, embedding2)[0][0]

# Sample query embedding
def get_matched_convo(query, df):
    query_embedding = get_embeddings(query)
    
    # Step 3: Compute similarity with each row in the DataFrame
    df['similarity'] = df['conv_A_user_vec'].apply(lambda x: compute_cosine_similarity(query_embedding, x))
    
    # Step 4: Sort rows based on similarity score (descending order)
    df_sorted = df.sort_values(by='similarity', ascending=False)
    
    # Step 5: Filter or get top matching rows (e.g., top 10 matches)
    top_matches = df_sorted.head(10) 
    
    # Print top matches
    return top_matches[['conv_A_user', 'conv_A_assistant','conv_A_rating','similarity']]

Le khodi ihlinzeka ngomongo wokudutshulwa ambalwa ombuzo ngamunye wokuhlola, usebenzisa ukufana kwe-cosline ukuthola ukufana okusondele kakhulu. Le mibuzo yesibonelo kanye nempendulo isebenza njengomongo owengeziwe ukuqondisa ukusebenza kahle. Umsebenzi olandelayo ukhiqiza ngokushesha ukudutshulwa okumbalwa:

import boto3
from langchain_aws import ChatBedrock
from pydantic import BaseModel

# Initialize Amazon Bedrock client
bedrock_runtime = boto3.client(service_name="bedrock-runtime", region_name="us-east-1")

# Configure the model to use
model_id = "us.anthropic.claude-3-5-haiku-20241022-v1:0"
model_kwargs = {
"max_tokens": 2048,
"temperature": 0.1,
"top_k": 250,
"top_p": 1,
"stop_sequences": ["nnHuman"],
}

# Create the LangChain Chat object for Bedrock
llm = ChatBedrock(
client=bedrock_runtime,
model_id=model_id,
model_kwargs=model_kwargs,
)

# Pydantic model to validate the output prompt
class OptimizedPromptOutput(BaseModel):
optimized_prompt: str

# Function to generate the few-shot prompt
def generate_few_shot_prompt_only(user_query, nearest_examples):
    # Ensure that df_examples is a DataFrame
    if not isinstance(nearest_examples, pd.DataFrame):
    raise ValueError("Expected df_examples to be a DataFrame")
    # Construct the few-shot prompt using nearest matching examples
    few_shot_prompt = "Here are examples of user queries, LLM responses, and feedback:nn"
    for i in range(len(nearest_examples)):
    few_shot_prompt += f"User Query: {nearest_examples.loc[i,'conv_A_user']}n"
    few_shot_prompt += f"LLM Response: {nearest_examples.loc[i,'conv_A_assistant']}n"
    few_shot_prompt += f"User Feedback: {'👍' if nearest_examples.loc[i,'conv_A_rating'] == 1.0 else '👎'}nn"
    
    # Add the user query for which the optimized prompt is required
    few_shot_prompt += f"Based on these examples, generate a general optimized prompt for the following user query:nn"
    few_shot_prompt += f"User Query: {user_query}n"
    few_shot_prompt += "Optimized Prompt: Provide a clear, well-researched response based on accurate data and credible sources. Avoid unnecessary information or speculation."
    
    return few_shot_prompt

Le khasi get_optimized_prompt Umsebenzi wenza imisebenzi elandelayo:

  1. Umbuzo womsebenzisi kanye nezibonelo ezifanayo zikhiqiza ngokushesha okudutshulwa.
  2. Sisebenzisa i-Shot Pramp embalwa kwi-LLM Call ukukhiqiza ngokushesha okulungiselelwe.
  3. Qiniseka ukuthi imiphumela ikufomethi elandelayo usebenzisa i-Pydantic.

Bona ikhodi elandelayo:

# Function to generate an optimized prompt using Bedrock and return only the prompt using Pydantic
def get_optimized_prompt(user_query, nearest_examples):
    # Generate the few-shot prompt
    few_shot_prompt = generate_few_shot_prompt_only(user_query, nearest_examples)
    
    # Call the LLM to generate the optimized prompt
    response = llm.invoke(few_shot_prompt)
    
    # Extract and validate only the optimized prompt using Pydantic
    optimized_prompt = response.content # Fixed to access the 'content' attribute of the AIMessage object
    optimized_prompt_output = OptimizedPromptOutput(optimized_prompt=optimized_prompt)
    
    return optimized_prompt_output.optimized_prompt

# Example usage
query = "Is the US dollar weakening over time?"
nearest_examples = get_matched_convo(query, df_test)
nearest_examples.reset_index(drop=True, inplace=True)

# Generate optimized prompt
optimized_prompt = get_optimized_prompt(query, nearest_examples)
print("Optimized Prompt:", optimized_prompt)

Le khasi make_llm_call_with_optimized_prompt Umsebenzi Sebenzisa umbuzo osheshayo nowomsebenzisi owenziwe nge-LLM (Anthropic's Claude Haiku 3.5) Call ukuthola impendulo yokugcina:

# Function to make the LLM call using the optimized prompt and user query
def make_llm_call_with_optimized_prompt(optimized_prompt, user_query):
    start_time = time.time()
    # Combine the optimized prompt and user query to form the input for the LLM
    final_prompt = f"{optimized_prompt}nnUser Query: {user_query}nResponse:"

    # Make the call to the LLM using the combined prompt
    response = llm.invoke(final_prompt)
    
    # Extract only the content from the LLM response
    final_response = response.content  # Extract the response content without adding any labels
    time_taken = time.time() - start_time
    return final_response,time_taken

# Example usage
user_query = "How to grow avocado indoor?"
# Assume 'optimized_prompt' has already been generated from the previous step
final_response,time_taken = make_llm_call_with_optimized_prompt(optimized_prompt, user_query)
print("LLM Response:", final_response)

Ukuhlolwa kokuqhathanisa kwezimpikiswano ezenziwe kahle nezingavinjezelwe

Ukuqhathanisa ukushesha okulungiselelwe ngesisekelo (kuleli cala, ngokushesha okungekho emthethweni), sichaze umsebenzi owabuyisa umphumela ngaphandle kwe-teeries elungiselelwe:

def get_unoptimized_prompt_response(df_eval):
    # Iterate over the dataframe and make LLM calls
    for index, row in tqdm(df_eval.iterrows()):
        # Get the user query from 'conv_A_user'
        user_query = row['conv_A_user']
        
        # Make the Bedrock LLM call
        response = llm.invoke(user_query)
        
        # Store the response content in a new column 'unoptimized_prompt_response'
        df_eval.at[index, 'unoptimized_prompt_response'] = response.content  # Extract 'content' from the response object
    
    return df_eval

Umsebenzi olandelayo wakha impendulo yombuzo usebenzisa ukusesha okufanayo kanye nesizukulwane esisheshayo esisezingeni eliphakeme sayo yonke imibuzo kwi-Dataset yokuhlola:

def get_optimized_prompt_response(df_eval):
    # Iterate over the dataframe and make LLM calls
    for index, row in tqdm(df_eval.iterrows()):
        # Get the user query from 'conv_A_user'
        user_query = row['conv_A_user']
        nearest_examples = get_matched_convo(user_query, df_test)
        nearest_examples.reset_index(drop=True, inplace=True)
        optimized_prompt = get_optimized_prompt(user_query, nearest_examples)
        # Make the Bedrock LLM call
        final_response,time_taken = make_llm_call_with_optimized_prompt(optimized_prompt, user_query)
        
        # Store the response content in a new column 'unoptimized_prompt_response'
        df_eval.at[index, 'optimized_prompt_response'] = final_response  # Extract 'content' from the response object
    
    return df_eval

Le khodi iqhathanisa izimpendulo ezikhiqizwe futhi ngaphandle kokudutshulwa okuningana, ukusetha idatha yokuhlola.

Llm njengojaji kanye nokuhlaziywa kwezimpendulo

Ukuze sinciphise ikhwalithi yokuphendula, sisebenzise i-LLM njengejaji lokuthola izimpendulo ezilungiselelwe futhi ezingafakwanga ukuze zihambisane nombuzo womsebenzisi. Sisebenzise i-Pydantic lapha ukuze siqiniseke ukuthi okuphumayo kunamathela kuphethini oyifunayo ka-0 (i-LLM ibikezela impendulo ngeke ithandeke ngumsebenzisi) noma 1 (I-LLM ibikazela impendulo izothandwa ngumsebenzisi):

# Define Pydantic model to enforce predicted feedback as 0 or 1
class FeedbackPrediction(BaseModel):
    predicted_feedback: conint(ge=0, le=1)  # Only allow values 0 or 1

# Function to generate few-shot prompt
def generate_few_shot_prompt(df_examples, unoptimized_response):
    few_shot_prompt = (
        "You are an impartial judge evaluating the quality of LLM responses. "
        "Based on the user queries and the LLM responses provided below, your task is to determine whether the response is good or bad, "
        "using the examples provided. Return 1 if the response is good (thumbs up) or 0 if the response is bad (thumbs down).nn"
    )
    few_shot_prompt += "Below are examples of user queries, LLM responses, and user feedback:nn"
    
    # Iterate over few-shot examples
    for i, row in df_examples.iterrows():
        few_shot_prompt += f"User Query: {row['conv_A_user']}n"
        few_shot_prompt += f"LLM Response: {row['conv_A_assistant']}n"
        few_shot_prompt += f"User Feedback: {'👍' if row['conv_A_rating'] == 1 else '👎'}nn"
    
    # Provide the unoptimized response for feedback prediction
    few_shot_prompt += (
        "Now, evaluate the following LLM response based on the examples above. Return 0 for bad response or 1 for good response.nn"
        f"User Query: {unoptimized_response}n"
        f"Predicted Feedback (0 for 👎, 1 for 👍):"
    )
    return few_shot_prompt

I-LLM-A-A -AGH ingukusebenza lapho i-LLM ingahlulela ukunemba kombhalo kusetshenziswa izibonelo ezithile ezinesisekelo. Sisebenzise lokho kusebenza lapha ukwahlulela umehluko phakathi komphumela otholwe kusuka ekushesheni okwenziwe kahle futhi okungalungisiwe. I-Amazon Bedrock yethule ukusebenza kwe-LLM-A-A-A-A-A-A-FASTIAL ngoDisemba 2024 engasetshenziselwa amacala anjalo. Emsebenzini olandelayo, sibonisa ukuthi i-LLM isebenza kanjani njengomhlaziyi, ishaya izimpendulo ezisuselwa ekuvumelaniseni kwazo nokwaneliseka ngedatha ephelele yokuhlola:

# Function to predict feedback using few-shot examples
def predict_feedback(df_examples, df_to_rate, response_column, target_col):
    # Create a new column to store predicted feedback
    df_to_rate[target_col] = None
    
    # Iterate over each row in the dataframe to rate
    for index, row in tqdm(df_to_rate.iterrows(), total=len(df_to_rate)):
        # Get the unoptimized prompt response
        try:
            time.sleep(2)
            unoptimized_response = row[response_column]

            # Generate few-shot prompt
            few_shot_prompt = generate_few_shot_prompt(df_examples, unoptimized_response)

            # Call the LLM to predict the feedback
            response = llm.invoke(few_shot_prompt)

            # Extract the predicted feedback (assuming the model returns '0' or '1' as feedback)
            predicted_feedback_str = response.content.strip()  # Clean and extract the predicted feedback

            # Validate the feedback using Pydantic
            try:
                feedback_prediction = FeedbackPrediction(predicted_feedback=int(predicted_feedback_str))
                # Store the predicted feedback in the dataframe
                df_to_rate.at[index, target_col] = feedback_prediction.predicted_feedback
            except (ValueError, ValidationError):
                # In case of invalid data, assign default value (e.g., 0)
                df_to_rate.at[index, target_col] = 0
        except:
            pass

    return df_to_rate

Esibonelweni esilandelayo, saphinda le nqubo izivivinyo ezingama-20, sithwebula amaphuzu aneliseka kwabasebenzisi ngaso sonke isikhathi. Isikolo se-Dataset siyisamba senani lokwaneliseka kokwanelisa komsebenzisi.

df_eval = df.drop(df_test.index).sample(100)
df_eval['unoptimized_prompt_response'] = "" # Create an empty column to store responses
df_eval = get_unoptimized_prompt_response(df_eval)
df_eval['optimized_prompt_response'] = "" # Create an empty column to store responses
df_eval = get_optimized_prompt_response(df_eval)
Call the function to predict feedback
df_with_predictions = predict_feedback(df_eval, df_eval, 'unoptimized_prompt_response', 'predicted_unoptimized_feedback')
df_with_predictions = predict_feedback(df_with_predictions, df_with_predictions, 'optimized_prompt_response', 'predicted_optimized_feedback')

# Calculate accuracy for unoptimized and optimized responses
original_success = df_with_predictions.conv_A_rating.sum()*100.0/len(df_with_predictions)
unoptimized_success  = df_with_predictions.predicted_unoptimized_feedback.sum()*100.0/len(df_with_predictions) 
optimized_success = df_with_predictions.predicted_optimized_feedback.sum()*100.0/len(df_with_predictions) 

# Display results
print(f"Original success: {original_success:.2f}%")
print(f"Unoptimized Prompt success: {unoptimized_success:.2f}%")
print(f"Optimized Prompt success: {optimized_success:.2f}%")

Ukuhlaziywa kwemiphumela

Ishadi lomugqa olandelayo libonisa ukuthuthukiswa kokusebenza kwesisombululo esilungisiwe ngaphezulu kweyodwa engavunyelwe. Izindawo eziluhlaza zibonisa ukuthuthuka okuhle, kanti izindawo ezibomvu zibonisa izinguquko ezingezinhle.

Igrafu yokuhlaziywa kokusebenza okuningiliziwe ngokuqhathanisa izixazululo ze-vs ezilungiselelwe kahle, ukugqamisa inani eliphakeme le-12% ecaleni lokuhlola 7.5

Njengoba siqoqe imiphumela yezilingo ezingama-20, sabona ukuthi okushiwo amazinga okugculisa kusuka ekuphumeni okungavinjelwe kwakungu-0.8696, kanti okushiwo izikolo zokwanelisa kusuka ku-0.9063. Ngakho-ke, indlela yethu ihluza isisekelo ngo-3.67%.

Ekugcineni, sasiqhuba isivivinyo sesampula esibhangqiwe sokuqhathanisa izikolo zokwaneliseka ezivela ekuphakameni okwenziwe kahle futhi okungaguquki. Lokhu kuhlolwa kwezibalo kuqinisekiswe ukuthi nokwenza kahle ikhwalithi yempendulo esheshayo ithuthukise kakhulu. Bona ikhodi elandelayo:

from scipy import stats
# Sample user satisfaction scores from the notebook
unopt = [] #20 samples of scores for the unoptimized promt
opt = [] # 20 samples of scores for the optimized promt]
# Paired sample t-test
t_stat, p_val = stats.ttest_rel(unopt, opt)
print(f"t-statistic: {t_stat}, p-value: {p_val}")

Ngemuva kokusebenzisa i-T-test, sathola inani le-P-FAST 0.000762, elingaphansi kuka-0.05. Ngakho-ke, ukuthuthukiswa kokusebenza kokuphakanyiswa okwenziwe kahle ngaphezulu kokukhuthaza okungavunyelwe kubalulekile ngokwezibalo.

Ukuthathwa Key

Sifunde lokhu okulandelayo okubalulekile okuvela kulesi sixazululo:

  • Ukushayela okumbalwa okudutshulwa kuthuthukisa impendulo yombuzo – Sebenzisa izibonelo ezimbalwa ezimbalwa zokudutshulwa kuholela ekuthuthukisweni okukukhulu kwikhwalithi yempendulo.
  • I-Amazon Titan Umbhalo Embeddings inika amandla ukufana okuvela ngokweqiniso – Imodeli ikhiqiza ukushumeka okwenza kusesha okusebenzayo okusebenzayo.
  • Ukuqinisekiswa kwezibalo kuqinisekisa ukusebenza ngempumelelo – Inani le-P-FURE ye-0.000762 libonisa ukuthi indlela yethu eyenziwe kahle ithuthukisa ukwaneliseka komsebenzisi.
  • Umthelela webhizinisi othuthukisiwe – Le ndlela ihambisa inani lebhizinisi elilinganiswayo ngokusebenzisa ukusebenza komsizi we-AI. Ukwanda kwama-3.67% ezinhlakeni zokweneliseka kuhumushela imiphumela ebonakalayo: Iminyango ye-HR ingalindela ukuhumusha okungafanele kwenqubomgomo (ukunciphisa ubungozi bokuhambisana namaqembu), namaqembu ezinsizakalo zamakhasimende angabona ukuncishiswa okukhulu kumathikithi akhuphukile. Ikhono lekhambi lokufunda ngokuqhubekayo kwimpendulo kwakha uhlelo lokuzithuthukisa olukhulisa i-ROI ngokusheshe ngaphandle kokudinga ubuchwepheshe obukhethekile be-ML noma ukutshalwa kwengqalasizinda.

Ukulinganiselwa

Yize uhlelo lubonisa ukuthembisa, ukusebenza kwalo kakhulu kuncike ekutholakaleni kanye nevolumu yempendulo yomsebenzisi, ikakhulukazi ezinhlelweni zesizinda esivaliwe. Ezimweni lapho kutholakala khona izibonelo ezimbalwa zezimpendulo, imodeli ingahlwitha ukukhiqiza amandla anengqondo noma yehluleke ukuthwebula ama-nuances okuthandwa ngumsebenzisi ngempumelelo. Ngokwengeziwe, ukuqaliswa kwamanje kuthatha ukuthi impendulo yomsebenzisi ithembekile futhi ithumele izidingo ezibanzi zomsebenzisi, okungenzeka ukuthi zinjalo njalo.

Izinyathelo ezilandelayo

Umsebenzi wesikhathi esizayo ungagxila ekwandiseni lolu hlelo ukuxhasa imibuzo nezimpendulo ezahlukahlukene nezimpendulo, okwenza ukuba zikwazi ukusebenzelana okubanzi ezisekelweni zabasebenzisi ezahlukahlukene. Ukufaka amasu wokubuyisa amandla okuthola amandla (ama-rag) kungaqhubekisela phambili ukuphatha umongo nokunemba kwemibuzo eyinkimbinkimbi. Ngokwengeziwe, izindlela zokuhlola ukubhekana nemikhawulo yezimo ezingezona zempendulo, ezinjengesizukulwane sokwenziwa noma ukufundwa kokufunda, kungenza indlela eqinile futhi iguquguquke.

Ukugcina

Kulokhu okuthunyelwe, sikhombise ukusebenza kahle kokusebenza kahle kombuzo kusetshenziswa i-Amazon Bedrock, ukushumpuka okumbalwa, kanye nempendulo yomsebenzisi ukuthuthukisa kakhulu ikhwalithi yokuphendula. Ngokuvumelanisa izimpendulo ngokuncamelayo okuqondene nomsebenzisi, le ndlela iyethela isidingo semodeli ebizayo enhle, okwenza kube lula ukuthi kusebenze izinhlelo zezwe zangempela. Ukuguquguquka kwayo kwenza ukuthi ilungele abasizi abasuselwa engxoxweni kuzo zonke izizinda ezahlukahlukene, njenge-ecommerce, insizakalo yamakhasimende, kanye nezimpendulo ezisezingeni eliphakeme, lapho kuqondaniswa khona.

Ukuze ufunde kabanzi, bheka izinsiza ezilandelayo:


Mayelana nababhali

Tanay Chowdhury Ungusosayensi wedatha esikhungweni se-Ai Innovation esikhungweni seWebhu ye-Amazon.

Parth patwa Ungusosayensi wedatha esikhungweni se-Ai Innovation esikhungweni seWebhu ye-Amazon.

Yingwei yu ngumphathi wesayensi osetshenzisiwe esikhungweni se-Ai Innovation Center e-Amazon Web Services.

Source link

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button