- xai 사이트에서 api 받기 – xai 사이트
- 구글 colab에서 아래 코드 복사 붙여넣고 api까지 넣어서 실행
import os
from openai import OpenAI
import requests
from bs4 import BeautifulSoup
import re
def fetch_news_content(url):
“””URL에서 뉴스 콘텐츠를 가져오고 정리합니다.”””
try:
headers = {
‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) ‘
‘AppleWebKit/537.36 (KHTML, like Gecko) ‘
‘Chrome/91.0.4472.124 Safari/537.36’
}
response = requests.get(url, headers=headers)
response.raise_for_status()
# HTML 파싱
soup = BeautifulSoup(response.content, ‘html.parser’)
# 제목 추출
title_tag = soup.find(‘h1’)
if title_tag:
title = title_tag.get_text().strip()
else:
title = ‘제목을 찾을 수 없음’
# 기사 내용 추출
article = ”
# 예를 들어, 연합뉴스의 경우 클래스명이 ‘story-news article’인 div 안에 본문이 있음
article_body = soup.find(‘div’, class_=’story-news article’)
if article_body:
paragraphs = article_body.find_all(‘p’)
else:
# 기본적으로 모든 <p> 태그를 추출
paragraphs = soup.find_all(‘p’)
for p in paragraphs:
article += p.get_text().strip() + ‘\n’
return f”{title}\n\n{article}”
except Exception as e:
return f”뉴스 콘텐츠를 가져오는 중 오류 발생: {str(e)}”
def create_style_assistant(writing_example):
XAI_API_KEY = ‘00000’ # 여기에 실제 API 키를 입력하세요 xai로 시작합니다.
client = OpenAI(
api_key=XAI_API_KEY,
base_url=”https://api.x.ai/v1″,
)
system_message = f”””이 작성 예시를 분석하고 그 스타일, 어조, 목소리를 모방하세요.”””
return client, system_message
def generate_response(client, system_message, prompt):
completion = client.chat.completions.create(
model=”grok-beta”, # 이미지를 반영하여 모델을 grok-beta로 설정
messages=[
{“role”: “system”, “content”: system_message},
{“role”: “user”, “content”: prompt}
]
)
return completion.choices[0].message.content
if __name__ == “__main__”:
my_writing_style = “””
[이모지] AI 로봇 작품이 경매 예상치를 초월하다
요약: 휴머노이드 로봇 예술가 Ai-da가 소더비 경매에서 역사를 만들었습니다.
세부 사항:
– “AI 신” 그림은 27번의 입찰로 강한 관심을 받아 거의 100만 달러에 판매되었습니다.
– 이 작품은 전통적인 초상화 예술과 AI 기반 기술을 결합하여 캔버스와 첨단 로보틱스를 사용합니다.
“””
news_url = input(“뉴스 URL을 입력하세요 (샘플 텍스트를 사용하려면 Enter를 누르세요): “)
if news_url:
news_content = fetch_news_content(news_url)
prompt = f”이 뉴스에 대한 게시물을 작성하세요:\n\n{news_content}”
else:
prompt = “URL이 존재하지 않습니다”
client, system_message = create_style_assistant(my_writing_style)
response = generate_response(client, system_message, prompt)
print(“\n생성된 응답:”)
print(response)